/* dcyphr.® Events (Fassung 341) — helle Flächen, IBM Plex, Chamäleon sparsam */
:root{--acc:#7a5cff;--cham:linear-gradient(115deg,#7a5cff,#00b4d8 24%,#12d8a0 46%,#ffd23f 66%,#ff5db1 86%,#7a5cff);
  --tx:#0a0a0a;--mu:#5d5d66;--li:#e6e6ea;--bg:#fff;--fl:#f6f6f8;--ok:#12a87a;--wa:#d99200;--er:#d63b57}
*{box-sizing:border-box}
body.ev{margin:0;background:var(--bg);color:var(--tx);font-family:"IBM Plex Sans",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.5}
.ev a{color:inherit}
.ev-top{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:14px;padding:10px max(16px,env(safe-area-inset-left,0px));background:rgba(255,255,255,.88);
  -webkit-backdrop-filter:saturate(180%) blur(10px);backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid var(--li)}
.ev-wm{display:flex;align-items:center;gap:8px;text-decoration:none;font-weight:800;letter-spacing:-.02em;white-space:nowrap}
.ev-wm img{height:20px;width:auto}
.ev-cham{background:var(--cham);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:evc 9s linear infinite}
@keyframes evc{to{background-position:300% 0}}
@media(prefers-reduced-motion:reduce){.ev-cham{animation:none}}
.ev-nav{display:flex;gap:4px;overflow-x:auto;flex:1;scrollbar-width:none}
.ev-nav::-webkit-scrollbar{display:none}
.ev-nav a{padding:7px 12px;border-radius:999px;text-decoration:none;font-size:.9rem;color:var(--mu);white-space:nowrap}
.ev-nav a.on{background:var(--tx);color:#fff}
.ev-who{font-size:.8rem;color:var(--mu);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:620px){.ev-who{display:none}}
.ev-main{max-width:1040px;margin:0 auto;padding:18px max(16px,env(safe-area-inset-left,0px)) 60px}
.ev-fuss{text-align:center;color:var(--mu);font-size:.8rem;padding:24px 16px calc(24px + env(safe-area-inset-bottom,0px))}
h1{font-size:clamp(1.5rem,4vw,2.2rem);line-height:1.15;margin:.2em 0 .4em;letter-spacing:-.02em}
h2{font-size:1.25rem;margin:1.6em 0 .6em;letter-spacing:-.01em}
h3{font-size:1.02rem;margin:.1em 0 .3em}
.mu{color:var(--mu)}.klein{font-size:.85rem}
.ev-flash{padding:11px 14px;border-radius:12px;margin:0 0 14px;font-size:.95rem;background:#e9f9f3;border:1px solid #bfe9d9}
.ev-flash.fehler{background:#fdecef;border-color:#f3c0ca}
.ev-flash.warn{background:#fff6e0;border-color:#f1dca3}
/* Knöpfe und Formulare */
.ev-btn,.ev button,.ev input[type=submit]{font:inherit}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;border-radius:12px;border:1px solid var(--tx);background:var(--tx);color:#fff;text-decoration:none;font-weight:600;font-size:.95rem;cursor:pointer;min-height:42px}
.btn.zwei{background:#fff;color:var(--tx);border-color:#cfcfd6}
.btn.acc{background:var(--acc);border-color:var(--acc)}
.btn.klein{padding:6px 11px;min-height:34px;font-size:.85rem;border-radius:10px}
.btn.rot{background:#fff;color:var(--er);border-color:#efb5c0}
.btn[disabled]{opacity:.5;cursor:not-allowed}
label.f{display:block;font-size:.85rem;color:var(--mu);margin:10px 0 4px}
.ev input[type=text],.ev input[type=email],.ev input[type=number],.ev input[type=datetime-local],.ev input[type=url],.ev input[type=search],.ev select,.ev textarea{width:100%;padding:10px 12px;border:1px solid #cfcfd6;border-radius:10px;font:inherit;background:#fff;color:var(--tx);min-height:42px}
.ev textarea{min-height:90px;resize:vertical}
.ev input:focus,.ev select:focus,.ev textarea:focus{outline:2px solid var(--acc);outline-offset:1px;border-color:var(--acc)}
.zeile{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.chk{display:flex;gap:10px;align-items:flex-start;margin:10px 0}
.chk input{margin-top:5px;width:18px;height:18px;accent-color:var(--acc)}
.karte{background:#fff;border:1px solid var(--li);border-radius:16px;padding:16px;margin:12px 0}
.karte.fl{background:var(--fl);border-color:transparent}
.raster{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.pille{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.75rem;background:var(--fl);color:var(--mu);border:1px solid var(--li)}
.pille.ok{background:#e9f9f3;color:#0b7a58;border-color:#bfe9d9}.pille.wa{background:#fff6e0;color:#8a5f00;border-color:#f1dca3}.pille.er{background:#fdecef;color:#a82840;border-color:#f3c0ca}
table.tab{width:100%;border-collapse:collapse;font-size:.9rem}
table.tab th,table.tab td{text-align:left;padding:8px 8px;border-bottom:1px solid var(--li);vertical-align:top}
table.tab th{font-size:.75rem;color:var(--mu);text-transform:uppercase;letter-spacing:.04em}
.tabscroll{overflow-x:auto}
details.d{border:1px solid var(--li);border-radius:14px;padding:0 14px;margin:10px 0;background:#fff}
details.d>summary{cursor:pointer;padding:12px 0;font-weight:600;list-style:none}
details.d>summary::-webkit-details-marker{display:none}
details.d[open]>summary{border-bottom:1px solid var(--li);margin-bottom:8px}
/* Hero der Landingpage */
.ev-hero{position:relative;border-radius:22px;overflow:hidden;color:#fff;min-height:300px;display:flex;align-items:flex-end;background:linear-gradient(135deg,var(--acc),#0a0a0a);background-size:cover;background-position:center;margin-top:4px}
.ev-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.72))}
.ev-hero .in{position:relative;padding:clamp(18px,4vw,36px);width:100%}
.ev-hero h1{color:#fff;margin:0 0 6px}
.ev-hero p{margin:4px 0;color:rgba(255,255,255,.92)}
.ev-hero .btn{margin-top:14px;background:#fff;color:#0a0a0a;border-color:#fff}
.ev-hero .btn.zwei{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}
.ev-bg{background-size:cover;background-position:center;background-attachment:fixed}
.ev-bgwrap{position:relative}
.ev-bgwrap.mit{background:linear-gradient(rgba(255,255,255,.93),rgba(255,255,255,.96)),var(--hint) center/cover fixed}
/* Programm */
.ev-tag{position:sticky;top:56px;z-index:5;background:#fff;padding:10px 0 6px;margin:18px 0 6px;font-weight:700;border-bottom:2px solid var(--tx)}
.ev-punkt{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--li)}
.ev-zeit{flex:0 0 62px;font-variant-numeric:tabular-nums}
.ev-zeit b{display:block;font-size:1rem}.ev-zeit span{color:var(--mu);font-size:.8rem}
.ev-pk{flex:1;min-width:0}
.ev-meta{display:flex;flex-wrap:wrap;gap:6px 10px;font-size:.78rem;color:var(--mu);align-items:center}
.ev-typ{background:var(--fl);border-radius:999px;padding:1px 9px;color:var(--tx);font-weight:600}
.t-workshop .ev-typ,.t-masterclass .ev-typ,.t-training .ev-typ{background:#e9f4ff}
.t-keynote .ev-typ{background:#f1ebff}.t-pause .ev-typ,.t-networking .ev-typ{background:#fff6e0}
.ev-vip{background:#ffd23f;color:#0a0a0a;border-radius:999px;padding:0 8px;font-weight:700}
.ev-anm{color:#0b7a58}
.ev-sp{margin:2px 0 4px;font-size:.92rem}.ev-sp span{color:var(--mu)}
.ev-bs{margin:4px 0;color:#33333a;font-size:.92rem}
.ev-plaetze{font-size:.8rem;color:var(--mu);margin:2px 0}
.ev-akt{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.ev-jetzt{border-left:4px solid var(--ok);padding-left:10px;margin-left:-14px}
.ev-jetzt-kopf{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin:6px 0 4px}
.ev-jk{border:1px solid var(--li);border-radius:16px;padding:12px 14px;background:#fff}
.ev-jk small{display:block;color:var(--mu);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;margin-bottom:2px}
.ev-jk.jetzt{border-color:#bfe9d9;background:#f2fcf8}
/* Ticket */
.ev-ticket{max-width:360px;margin:12px auto;border-radius:22px;overflow:hidden;border:1px solid var(--li);box-shadow:0 10px 40px rgba(20,20,40,.1);background:#fff}
.ev-ticket .kopf{padding:16px 18px;color:#fff;background:linear-gradient(135deg,var(--acc),#0a0a0a)}
.ev-ticket .kopf h2{margin:0;color:#fff;font-size:1.15rem}
.ev-ticket .qr{display:flex;justify-content:center;padding:18px;background:#fff}
.ev-ticket .qr svg{width:min(260px,70vw);height:auto;border-radius:8px}
.ev-ticket .fuss{padding:10px 18px 16px;text-align:center}
.ev-ticket .code{font-family:"IBM Plex Mono",ui-monospace,monospace;letter-spacing:.08em;font-size:1.05rem;font-weight:600}
.ev-vipband{display:inline-block;background:#ffd23f;color:#0a0a0a;font-weight:800;border-radius:8px;padding:2px 10px;letter-spacing:.06em}
/* Einlass */
.ev-ampel{border-radius:18px;padding:18px;text-align:center;margin:12px 0;border:2px solid var(--li);background:var(--fl)}
.ev-ampel.gruen{background:#e9f9f3;border-color:var(--ok)}.ev-ampel.gelb{background:#fff6e0;border-color:var(--wa)}.ev-ampel.rot{background:#fdecef;border-color:var(--er)}
.ev-ampel b{display:block;font-size:1.4rem}
.ev-zahl{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin:10px 0}
.ev-zahl div{background:var(--fl);border-radius:14px;padding:12px}
.ev-zahl b{display:block;font-size:1.6rem;line-height:1}.ev-zahl span{color:var(--mu);font-size:.8rem}
video.scan{width:100%;max-height:300px;border-radius:14px;background:#000;display:none;object-fit:cover}
.ev-reiter{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--li);margin:10px 0 14px;scrollbar-width:none}
.ev-reiter a{padding:9px 13px;text-decoration:none;color:var(--mu);white-space:nowrap;border-bottom:3px solid transparent;font-weight:500}
.ev-reiter a.on{color:var(--tx);border-color:var(--acc)}
.ev-leer{text-align:center;color:var(--mu);padding:30px 10px}
.ev-firma h3{margin-bottom:2px}
@media print{.ev-top,.ev-fuss,.ev-akt,.ev-reiter{display:none}}

/* Fassung 343: Event-Chat */
.ev-kanaele{display:flex;gap:6px;overflow-x:auto;margin:0 0 12px;scrollbar-width:none}
.ev-kanaele a{flex:0 0 auto;padding:7px 14px;border-radius:999px;background:var(--bg2,#eef0f4);color:var(--tx);text-decoration:none;font-weight:600;font-size:14px}
.ev-kanaele a.on{background:var(--tx);color:var(--bg,#fff)}
.ev-chat{display:flex;flex-direction:column;border:1px solid var(--li);border-radius:16px;background:var(--bg,#fff);overflow:hidden}
.ev-chat-kopf{margin:0;padding:12px 16px;border-bottom:1px solid var(--li);font-size:16px}
.ev-chat-liste{height:clamp(220px,calc(100vh - 430px),520px);height:clamp(220px,calc(100dvh - 430px),520px);overflow-y:auto;padding:12px 14px;display:flex;flex-direction:column;gap:8px;overscroll-behavior:contain}
.c-m{max-width:88%;align-self:flex-start;background:var(--bg2,#eef0f4);border-radius:14px 14px 14px 4px;padding:8px 12px}
.c-m.eigen{align-self:flex-end;background:color-mix(in srgb,var(--acc) 16%,transparent);border-radius:14px 14px 4px 14px}
.c-m.team{border-left:3px solid var(--acc)}
.c-m p{margin:2px 0 0;overflow-wrap:anywhere;line-height:1.4}
.c-k{display:flex;gap:6px;align-items:baseline;flex-wrap:wrap;font-size:13px}
.c-k time{color:var(--mu);font-size:12px}
.c-tm{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--acc)}
.c-akt{margin-left:auto;display:inline-flex;gap:2px}
.c-a{background:none;border:0;padding:4px 6px;min-width:32px;min-height:32px;border-radius:8px;cursor:pointer;color:var(--mu);font-size:14px;text-decoration:none;line-height:1}
.c-a:hover{background:rgba(0,0,0,.06)}
.c-ok{font-size:12px;color:var(--mu)}
.ev-chat-form{display:flex;gap:8px;padding:10px;border-top:1px solid var(--li);align-items:flex-end}
.ev-chat-form textarea{flex:1;resize:none;min-height:44px;max-height:140px;border:1px solid var(--li);border-radius:12px;padding:10px 12px;font:inherit}
.ev-chat>.mu{padding:0 14px 8px;margin:0}

/* Fassung 344: Aussteller/Sponsoren sortieren, Logos, Logoleisten */
.ev-sort-kopf{margin:18px 0 6px;font-size:15px}
.ev-sort{list-style:none;margin:0;padding:0;min-height:44px;border:1px dashed var(--li);border-radius:12px;padding:6px;display:flex;flex-direction:column;gap:6px}
.ev-sort:empty::before{content:attr(data-leer);color:var(--mu);font-size:13px;text-align:center;padding:10px}
.ev-sort li{background:var(--bg,#fff);border:1px solid var(--li);border-radius:12px;padding:6px 10px}
.ev-sort li.zieht{opacity:.85;box-shadow:0 8px 24px rgba(0,0,0,.18);border-color:var(--acc)}
.ev-sort .fz{display:flex;align-items:center;gap:10px;min-height:44px}
.ev-sort .griff{cursor:grab;touch-action:none;user-select:none;font-size:22px;line-height:1;padding:8px 6px;color:var(--mu)}
.ev-sort .fn{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ev-sort .fo{display:none}
@media(min-width:640px){.ev-sort .fo{display:inline}}
.ev-sort .fb{display:inline-flex}
.ev-sort-status{min-height:20px;font-size:13px;color:var(--mu)}
.ev-sort-status.fehler{color:#b3261e}
.ev-logo-klein{width:56px;height:34px;object-fit:contain;flex:0 0 auto}
.ev-logo-klein.leer{background:var(--bg2,#eef0f4);border-radius:6px}
.ev-logo-vor{max-width:220px;max-height:110px;display:block;margin:4px 0;background:repeating-conic-gradient(#eee 0 25%,#fff 0 50%) 0 0/16px 16px;border-radius:8px}
.ev-leiste{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px 34px;padding:18px 12px;margin:0 0 6px}
.ev-leiste a,.ev-leiste span.lg{display:inline-flex;align-items:center;text-decoration:none;color:var(--tx);font-weight:600}
.ev-leiste img{height:44px;max-width:150px;width:auto;object-fit:contain}
.ev-leiste.footer{border-top:1px solid var(--li);margin-top:26px;padding-top:22px}
.ev-firma .lg-gross{height:56px;max-width:100%;width:auto;object-fit:contain;display:block;margin:6px 0}
.ev-gruppe{margin:22px 0 8px;font-size:1.05rem}

/* Fassung 345: Planung und Vorschau */
.ev-planband{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;background:#fff7d6;border:1px solid #f0d36a;color:#4a3b00;border-radius:12px;padding:10px 14px;margin:0 0 14px}
.ev-vorschauband{position:sticky;top:0;z-index:50;background:#fff7d6;border-bottom:1px solid #f0d36a;color:#4a3b00;padding:10px 16px;text-align:center;font-size:14px}
.ev-vorschauband a{color:inherit;text-decoration:underline;margin-left:6px}
.ev-plan{display:flex;flex-direction:column;gap:8px}
.ev-plan-z{display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between;align-items:center}
.ev-plan-z.fehler{border-color:#e6a5a0}.ev-plan-z.verworfen,.ev-plan-z.angewendet{opacity:.75}
.ev-plan-z .pa{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.ev-plan-z .pa form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}

/* Fassung 346: Rückweg zur dcyphr.® ID */
.ev-zuid{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;padding:6px 10px;border:1px solid var(--li);border-radius:999px;font-size:13px;font-weight:600;color:var(--tx);text-decoration:none;flex:0 0 auto}
.ev-zuid:hover{border-color:var(--acc)}
@media(max-width:520px){.ev-zuid{padding:6px 9px}}

/* Fassung 347: Programm ohne Uhrzeit, Speaker-Foto, Firmen-Verknüpfung */
.ev-av{border-radius:50%;object-fit:cover;flex:0 0 auto;background:var(--bg2,#eef0f4)}
.ev-av.ini{display:inline-flex;align-items:center;justify-content:center;font-weight:700;color:var(--acc);background:color-mix(in srgb,var(--acc) 12%,#fff)}
.ev-sps{list-style:none;margin:8px 0 4px;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px}
.ev-sps li>a,.ev-sps li>div{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}
.ev-sps li span{display:flex;flex-direction:column;line-height:1.25}
.ev-sps li small{color:var(--mu);font-size:.8rem}
.ev-fl{display:inline-flex;align-items:center;gap:8px;margin:6px 0 2px;padding:5px 10px;border:1px solid var(--li);border-radius:999px;text-decoration:none;color:inherit;font-size:.85rem}
.ev-fl small{color:var(--mu)}.ev-fl img{height:20px;width:auto;max-width:70px;object-fit:contain}
.ev-trk{background:color-mix(in srgb,var(--acc) 10%,#fff);color:var(--tx);border-radius:999px;padding:1px 8px}
.ev-spr{border:1px solid var(--li);border-radius:999px;padding:0 8px;font-size:.78rem}
.ev-track{margin:20px 0 6px;font-size:1rem;color:var(--tx);display:flex;align-items:center;gap:8px}
.ev-track::before{content:"";width:4px;height:1.1em;border-radius:2px;background:var(--acc)}
.ev-punkt.ohne-zeit{padding:14px 0}
.ev-sk{text-align:left}.ev-sk .ev-av{margin-bottom:8px}
.ev-sum-sp{display:flex;align-items:center;gap:10px}
.ev-sk:target,.ev-firma:target,.ev-punkt:target{outline:2px solid var(--acc);outline-offset:3px}

/* ============ Fassung 349: Aufgeräumtes Layout, Programm-Ansichten, Handy ============ */
/* Felder laufen nie über den Rand */
.ev input,.ev select,.ev textarea{max-width:100%;min-width:0}
.ev input[type=datetime-local],.ev input[type=date],.ev input[type=time]{min-width:0;-webkit-appearance:none;appearance:none;min-height:42px;display:block}
.ev input[type=file]{max-width:100%;min-width:0}
.zeile{grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr))}
.zeile>*{min-width:0}
.karte,details.d{min-width:0;overflow-wrap:anywhere}
.ev-main{overflow-x:clip}
.ev table.tab{table-layout:auto}.tabscroll{max-width:100%}
.ev-reiter,.ev-nav{max-width:100%}
.raster{grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr))}
@media(max-width:480px){.btn{width:auto;max-width:100%}.karte{padding:14px}.ev form .zeile>div{width:100%}}

/* Hero und Eckdaten */
.ev-hero{min-height:clamp(260px,38vw,380px);border-radius:26px;box-shadow:0 18px 50px -22px color-mix(in srgb,var(--acc) 60%,#000)}
.ev-hero::before{background:linear-gradient(180deg,rgba(0,0,0,0) 20%,rgba(0,0,0,.66))}
.ev-hero .art{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;background:rgba(255,255,255,.18);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:3px 11px;margin-bottom:10px}
.ev-hero h1{font-size:clamp(1.8rem,5.4vw,3.2rem);text-wrap:balance}
.ev-fakten{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:10px;margin:14px 0 4px}
.ev-fakten div{background:var(--fl);border-radius:16px;padding:12px 14px}
.ev-fakten b{display:block;font-size:1.5rem;line-height:1.1;letter-spacing:-.02em}
.ev-fakten span{font-size:.78rem;color:var(--mu)}
.ev-main section>h2{display:flex;align-items:center;gap:10px;font-size:1.4rem;margin-top:2em}
.ev-main section>h2::after{content:"";flex:1;height:2px;background:linear-gradient(90deg,var(--acc),transparent);border-radius:2px;opacity:.5}
.ev-sk{border-radius:18px;transition:transform .15s,box-shadow .15s}
.ev-sk:hover{transform:translateY(-2px);box-shadow:0 12px 30px -16px rgba(0,0,0,.3)}
.ev-sk .ev-av{width:84px!important;height:84px!important;font-size:30px!important}
.ev-av.ini{background:hsl(var(--hue,260) 70% 93%);color:hsl(var(--hue,260) 55% 32%)}
.ev-firma{border-radius:18px}

/* Ansichtswahl */
.ev-bar{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;justify-content:space-between;margin:6px 0 10px}
.ev-views{display:inline-flex;background:var(--fl);border-radius:999px;padding:3px;gap:2px;max-width:100%;overflow-x:auto;scrollbar-width:none}
.ev-views a{padding:6px 14px;border-radius:999px;text-decoration:none;font-size:.85rem;font-weight:600;color:var(--mu);white-space:nowrap}
.ev-views a.on{background:var(--tx);color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.ev-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;max-width:100%;padding:2px}
.ev-chips::-webkit-scrollbar,.ev-views::-webkit-scrollbar{display:none}
.ev-chips button{flex:0 0 auto;padding:6px 13px;border-radius:999px;border:1px solid var(--li);background:#fff;font:inherit;font-size:.82rem;cursor:pointer;color:var(--tx)}
.ev-chips button.on{background:color-mix(in srgb,var(--acc) 14%,#fff);border-color:var(--acc);font-weight:600}
.weg{display:none!important}
.ev-festival{display:none}
.ev-prog[data-ansicht=festival] .ev-slides,.ev-prog[data-ansicht=festival] .ev-chips{display:none}
.ev-prog[data-ansicht=festival] .ev-festival{display:block}
.ev-punkt{position:relative;border-radius:14px;transition:background .15s}
.ev-punkt:focus-visible,.ev-fk:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.ev-punkt .ev-kurz{display:none;margin:0;font-size:.85rem;color:var(--mu);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ev-sps li>a:hover b{color:var(--acc)}
.ev-av.ev-av{box-shadow:0 0 0 2px #fff}
.t-keynote{--tc:#7a5cff}.t-vortrag{--tc:#00b4d8}.t-panel{--tc:#ff5db1}.t-workshop,.t-masterclass,.t-training{--tc:#12d8a0}.t-networking,.t-pause,.t-sonstiges,.t-meetgreet{--tc:#ffd23f}
.t-runde,.t-pitch,.t-spiel,.t-kampf,.t-auftritt,.t-session{--tc:#00b4d8}.t-finale,.t-hauptkampf,.t-headliner{--tc:#ff5db1}.t-siegerehrung{--tc:#ffd23f}
.ev-punkt{border-left:3px solid color-mix(in srgb,var(--tc,#ccc) 70%,transparent);padding-left:12px}
.ev-punkt.ohne-zeit{padding-left:12px}
/* Liste: Beschreibung kurz, bei Mouse-over ganz */
.ev-prog[data-ansicht=liste] .ev-bs{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ev-prog[data-ansicht=liste] .ev-punkt:hover .ev-bs,.ev-prog[data-ansicht=liste] .ev-punkt.open .ev-bs{-webkit-line-clamp:unset;display:block}
.ev-prog[data-ansicht=liste] .ev-punkt:hover{background:var(--fl)}
/* Erweitert: große Karten */
@media(min-width:900px){.ev-prog[data-ansicht=erweitert] .ev-items{display:grid;grid-template-columns:1fr 1fr;gap:14px}}
.ev-prog[data-ansicht=erweitert] .ev-punkt{flex-direction:column;gap:6px;background:#fff;border:1px solid var(--li);border-left:4px solid var(--tc,#ccc);border-radius:18px;padding:16px;box-shadow:0 8px 26px -20px rgba(0,0,0,.35)}
.ev-prog[data-ansicht=erweitert] .ev-zeit{flex:none;display:flex;gap:6px;align-items:baseline}
.ev-prog[data-ansicht=erweitert] .ev-sps li .ev-av{width:52px!important;height:52px!important;font-size:19px!important}
.ev-prog[data-ansicht=erweitert] .ev-tag{margin-top:6px}
/* Minimal: eine Zeile, Details bei Mouse-over */
.ev-prog[data-ansicht=minimal] .ev-punkt{padding:7px 10px;gap:10px;align-items:center;border-bottom:1px solid var(--li);border-radius:10px}
.ev-prog[data-ansicht=minimal] .ev-punkt:hover,.ev-prog[data-ansicht=minimal] .ev-punkt.open{background:var(--fl)}
.ev-prog[data-ansicht=minimal] .ev-zeit{flex:0 0 52px}.ev-prog[data-ansicht=minimal] .ev-zeit span{display:none}
.ev-prog[data-ansicht=minimal] .ev-pk{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:0 14px;align-items:center}
.ev-prog[data-ansicht=minimal] .ev-meta{display:none}
.ev-prog[data-ansicht=minimal] .ev-punkt h3{margin:0;font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ev-prog[data-ansicht=minimal] .ev-kurz{display:block}
.ev-prog[data-ansicht=minimal] .ev-detail{display:none;grid-column:1/-1}
.ev-prog[data-ansicht=minimal] .ev-akt,.ev-prog[data-ansicht=minimal] .ev-pk>p{grid-column:1/-1}
@media(min-width:701px){
  .ev-prog[data-ansicht=minimal] .ev-punkt:hover .ev-detail,.ev-prog[data-ansicht=minimal] .ev-punkt:focus-within .ev-detail,.ev-prog[data-ansicht=minimal] .ev-punkt.open .ev-detail{display:block;position:absolute;left:62px;top:calc(100% - 4px);z-index:25;width:min(560px,calc(100% - 70px));background:#fff;border:1px solid var(--li);border-radius:16px;padding:14px 16px;box-shadow:0 20px 50px -18px rgba(0,0,0,.4)}
}
.ev-prog[data-ansicht=minimal] .ev-punkt.open .ev-detail{display:block}
/* Festival: Zeitraster mit Spalten je Bühne */
.ev-fday{margin:0 0 22px;--zh:26px}
.ev-fgrid{display:grid;gap:0 8px;overflow-x:auto;padding:0 0 8px;position:relative}
.ev-col{display:contents}
.ev-ch{position:sticky;top:0;margin:0 0 6px;padding:8px 10px;background:color-mix(in srgb,var(--acc) 10%,#fff);border-radius:12px;font-size:.88rem;text-align:center;z-index:2}
.ev-ft{font-size:.75rem;color:var(--mu);border-top:1px solid var(--li);padding-top:2px;font-variant-numeric:tabular-nums}
.ev-fk{position:relative;min-height:0;margin:1px 0}
.ev-fk-in{height:100%;overflow:hidden;background:color-mix(in srgb,var(--tc,#00b4d8) 14%,#fff);border:1px solid color-mix(in srgb,var(--tc,#00b4d8) 40%,#fff);border-left:4px solid var(--tc,#00b4d8);border-radius:10px;padding:5px 8px;display:flex;flex-direction:column;gap:1px;cursor:default}
.ev-fk-in small{font-size:.7rem;color:var(--mu);font-variant-numeric:tabular-nums}
.ev-fk-in b{font-size:.84rem;line-height:1.2;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ev-fk-in .n{display:flex;align-items:center;gap:5px;font-size:.74rem;color:#33333a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ev-fk-in .n i{display:inline-flex;font-style:normal}.ev-fk-in .n .ev-av{margin-right:-6px;box-shadow:0 0 0 1.5px #fff}
.ev-fk-mehr{display:none;position:absolute;left:0;top:calc(100% + 2px);z-index:30;width:max(100%,280px);background:#fff;border:1px solid var(--li);border-radius:16px;padding:12px 14px;box-shadow:0 20px 50px -18px rgba(0,0,0,.45)}
.ev-fk-mehr strong{display:block;margin:6px 0 4px;line-height:1.25}
.ev-fk-mehr .sp{display:flex;gap:8px;align-items:center;margin:6px 0}.ev-fk-mehr .sp span{display:flex;flex-direction:column;line-height:1.2}.ev-fk-mehr .sp small{color:var(--mu);font-size:.78rem}
.ev-fk:hover,.ev-fk:focus-within,.ev-fk.open{z-index:40}
.ev-fk:hover .ev-fk-mehr,.ev-fk:focus .ev-fk-mehr,.ev-fk.open .ev-fk-mehr{display:block}
.ev-fk:last-child .ev-fk-mehr{left:auto;right:0}
.ev-fflow{display:flex;gap:12px;overflow-x:auto;padding-bottom:8px;align-items:flex-start}
.ev-fflow .ev-col{display:block;flex:1 0 240px;min-width:240px}
.ev-fflow .ev-fk{margin:0 0 8px}.ev-fflow .ev-fk-in{height:auto}
.ev-fflow .ev-ch{position:static}

/* Handy: Karussell, einfache Bedienung */
@media(max-width:700px){
  .ev-bar{position:sticky;top:52px;z-index:12;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:6px 0;margin:0 0 8px}
  .ev-views{width:100%;justify-content:space-between}.ev-views a{flex:1;text-align:center;padding:8px 6px}
  .ev-chips{width:100%}.ev-chips button{padding:8px 14px}.ev-chips .alle{display:none}
  .ev-slides{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;margin:0 -16px;padding:0 16px 8px;scroll-padding:0 16px;scrollbar-width:none}
  .ev-slides::-webkit-scrollbar{display:none}
  .ev-slide{flex:0 0 90%;min-width:0;scroll-snap-align:start}
  .ev-slide:only-child{flex-basis:100%}
  .ev-slide .ev-tag{position:static;margin-top:4px}
  .ev-prog[data-ansicht=minimal] .ev-pk{grid-template-columns:1fr}
  .ev-prog[data-ansicht=minimal] .ev-punkt.open .ev-detail{position:static;box-shadow:none;border:0;padding:8px 0 0;width:auto}
  .ev-prog[data-ansicht=minimal] .ev-kurz{white-space:normal}
  .ev-prog[data-ansicht=erweitert] .ev-items{display:block}.ev-prog[data-ansicht=erweitert] .ev-punkt{margin-bottom:10px}
  .ev-fgrid{display:flex!important;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 16px;margin:0 -16px;padding:0 16px 8px;scrollbar-width:none}
  .ev-ft{display:none}
  .ev-col{display:block;flex:0 0 84%;scroll-snap-align:start;min-width:0}
  .ev-fk{grid-area:auto!important;margin:0 0 8px;min-height:64px}.ev-fk-in{height:auto}
  .ev-col .ev-ch{position:static;grid-area:auto!important}
  .ev-fk-mehr{position:static;display:none;margin-top:4px;box-shadow:none;width:auto}
  .ev-fflow{margin:0 -16px;padding:0 16px 8px;scroll-snap-type:x mandatory;scroll-padding:0 16px}.ev-fflow .ev-col{flex:0 0 84%;scroll-snap-align:start}
  .ev-hero{border-radius:20px}
  .ev-fakten b{font-size:1.25rem}
}
@media(prefers-reduced-motion:reduce){.ev-sk{transition:none}}

/* Karten mit Muster-Grafik (Listen, Muster) */
.ev-cover{display:block;height:92px;margin:-16px -16px 12px;border-radius:16px 16px 0 0;background:#222 center/cover no-repeat}
.karte.mit-cover{overflow:hidden;padding-top:16px}

/* ============ Fassung 350: Design je Event ============ */
/* Hintergrund */
body.ev-bg-getoent{background:color-mix(in srgb,var(--acc) 6%,#fff)}
body.ev-bg-verlauf{background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 16%,#fff),#fff 620px) no-repeat,#fff}
body.ev-bg-grafik{background:linear-gradient(rgba(255,255,255,.9),rgba(255,255,255,.96)),var(--page-bg) center top/cover fixed #fff}
body.ev-bg-bild{background:linear-gradient(rgba(255,255,255,.93),rgba(255,255,255,.96)),var(--page-bg) center/cover fixed #fff}
/* Titelbereich */
.ev-hero-kompakt .ev-hero{min-height:190px;border-radius:20px}.ev-hero-kompakt .ev-hero h1{font-size:clamp(1.5rem,4vw,2.2rem)}
.ev-hero-zentriert .ev-hero{text-align:center;align-items:center;justify-content:center;min-height:clamp(300px,42vw,440px)}
.ev-hero-zentriert .ev-hero .in{display:flex;flex-direction:column;align-items:center}
.ev-ov-leicht .ev-hero::before{background:linear-gradient(180deg,rgba(0,0,0,0) 40%,rgba(0,0,0,.4))}
.ev-ov-stark .ev-hero::before{background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.82))}
/* Ecken */
.ev-r-eckig .ev-hero,.ev-r-eckig .karte,.ev-r-eckig .ev-punkt,.ev-r-eckig .ev-fakten div,.ev-r-eckig .ev-sk,.ev-r-eckig .ev-firma,.ev-r-eckig .ev-fk-in,.ev-r-eckig .ev-fk-mehr,.ev-r-eckig details.d,.ev-r-eckig .ev-ch,.ev-r-eckig .ev-jk{border-radius:4px}
.ev-r-eckig .btn,.ev-r-eckig .ev-views,.ev-r-eckig .ev-views a,.ev-r-eckig .ev-chips button,.ev-r-eckig .ev-typ,.ev-r-eckig input,.ev-r-eckig select,.ev-r-eckig textarea{border-radius:4px}
.ev-r-eckig .ev-av{border-radius:6px}
/* Karten */
.ev-k-flach .karte,.ev-k-flach .ev-sk,.ev-k-flach .ev-firma{box-shadow:none;border-color:transparent;background:var(--fl)}
.ev-k-schatten .karte,.ev-k-schatten .ev-sk,.ev-k-schatten .ev-firma{box-shadow:0 10px 30px -22px rgba(0,0,0,.45)}
.ev-k-rahmen .karte,.ev-k-rahmen .ev-sk,.ev-k-rahmen .ev-firma{box-shadow:none;border:2px solid color-mix(in srgb,var(--acc) 35%,#fff)}
/* Dunkel */
body.ev-bg-dunkel{--tx:#f3f4f8;--mu:#a3a7b5;--li:#2c3040;--bg:#0e1017;--fl:#1a1d29;background:#0e1017;color:var(--tx)}
.ev-bg-dunkel .ev-top{background:rgba(14,16,23,.88)}
.ev-bg-dunkel .ev-wm img{filter:invert(1) hue-rotate(180deg)}
.ev-bg-dunkel .ev-nav a.on,.ev-bg-dunkel .ev-views a.on{background:#f3f4f8;color:#0e1017}
.ev-bg-dunkel .karte,.ev-bg-dunkel details.d,.ev-bg-dunkel .ev-jk,.ev-bg-dunkel .ev-chips button,.ev-bg-dunkel .ev-prog[data-ansicht=erweitert] .ev-punkt,.ev-bg-dunkel .ev-ticket,.ev-bg-dunkel .ev-zuid{background:#161924;color:var(--tx)}
.ev-bg-dunkel .ev-tag{background:#0e1017;border-color:#f3f4f8}
.ev-bg-dunkel .ev-fk-in{background:color-mix(in srgb,var(--tc,#00b4d8) 22%,#12151f);color:var(--tx)}
.ev-bg-dunkel .ev-fk-in .n,.ev-bg-dunkel .ev-bs{color:#d4d7e2}
.ev-bg-dunkel .ev-fk-mehr,.ev-bg-dunkel .ev-prog[data-ansicht=minimal] .ev-punkt:hover .ev-detail,.ev-bg-dunkel .ev-prog[data-ansicht=minimal] .ev-punkt.open .ev-detail{background:#1b1f2d;border-color:#2c3040}
.ev-bg-dunkel .ev-ch{background:color-mix(in srgb,var(--acc) 22%,#12151f)}
.ev-bg-dunkel .ev-bar{background:rgba(14,16,23,.94)}
.ev-bg-dunkel input,.ev-bg-dunkel select,.ev-bg-dunkel textarea{background:#12151f;color:var(--tx);border-color:#2c3040}
.ev-bg-dunkel .ev-leiste img,.ev-bg-dunkel .lg-gross{background:#fff;border-radius:8px;padding:4px 8px}
.ev-bg-dunkel .ev-av.ini{background:hsl(var(--hue,260) 40% 22%);color:hsl(var(--hue,260) 80% 85%)}
.ev-bg-dunkel .ev-punkt:hover,.ev-bg-dunkel .ev-prog[data-ansicht=liste] .ev-punkt:hover,.ev-bg-dunkel .ev-prog[data-ansicht=minimal] .ev-punkt:hover{background:#1a1d29}
.ev-bg-dunkel .ev-typ{background:#232738;color:var(--tx)}
.ev-bg-dunkel .btn.zwei{background:#161924;color:var(--tx);border-color:#2c3040}
.ev-bg-dunkel .btn:not(.zwei):not(.acc):not(.rot){background:#f3f4f8;color:#0e1017;border-color:#f3f4f8}
.ev-bg-dunkel .ev-fuss,.ev-bg-dunkel .ev-fuss a{color:var(--mu)}
.ev-bg-dunkel .ev-bs{color:#cfd2dd}
@media(max-width:700px){.ev-bg-dunkel .ev-bar{background:rgba(14,16,23,.94)}}

/* Studio: Design-Auswahl */
.ev-opt{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(140px,100%),1fr));gap:10px;margin:6px 0 4px}
.ev-opt label{position:relative;display:block;border:2px solid var(--li);border-radius:14px;padding:8px;cursor:pointer;font-size:.85rem;text-align:center;background:#fff;min-width:0}
.ev-opt input{position:absolute;opacity:0;pointer-events:none}
.ev-opt label:has(input:checked){border-color:var(--acc);box-shadow:0 0 0 3px color-mix(in srgb,var(--acc) 22%,transparent)}
.ev-opt .vs{display:block;height:46px;border-radius:8px;margin-bottom:6px;border:1px solid var(--li)}
.vs-weiss{background:#fff}.vs-getoent{background:color-mix(in srgb,var(--acc) 8%,#fff)}.vs-verlauf{background:linear-gradient(180deg,color-mix(in srgb,var(--acc) 30%,#fff),#fff)}
.vs-grafik{background:linear-gradient(135deg,var(--acc),#111)}.vs-bild{background:repeating-conic-gradient(#e6e6ea 0 25%,#fff 0 50%) 0 0/14px 14px}.vs-dunkel{background:#0e1017}
.vs-gross{background:linear-gradient(180deg,#e6e6ea 0 70%,#fff 70%)}.vs-kompakt{background:linear-gradient(180deg,#e6e6ea 0 38%,#fff 38%)}.vs-zentriert{background:radial-gradient(circle at 50% 50%,#bbb 0 18%,#e6e6ea 19%)}
.vs-rund{border-radius:18px!important;background:#e6e6ea}.vs-eckig{border-radius:2px!important;background:#e6e6ea}
.vs-schatten{background:#fff;box-shadow:0 8px 14px -6px rgba(0,0,0,.4)}.vs-flach{background:var(--fl)}.vs-rahmen{background:#fff;border:2px solid var(--acc)!important}
.vs-leicht{background:linear-gradient(180deg,#9aa,#789)}.vs-mittel{background:linear-gradient(180deg,#789,#345)}.vs-stark{background:linear-gradient(180deg,#456,#012)}
.ev-farben{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0}
.ev-farben label{width:38px;height:38px;border-radius:50%;cursor:pointer;border:3px solid #fff;box-shadow:0 0 0 1px var(--li);position:relative}
.ev-farben input{position:absolute;opacity:0}
.ev-farben label:has(input:checked){box-shadow:0 0 0 3px var(--tx)}
.ev-farben input[type=color]{opacity:1;position:static;width:100%;height:100%;padding:0;border:0;border-radius:50%;background:none}
.ev-avwahl{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0}
.ev-avwahl label{position:relative;cursor:pointer;border-radius:50%;line-height:0}
.ev-avwahl input{position:absolute;opacity:0}
.ev-avwahl img,.ev-avwahl .ini{width:46px;height:46px;border-radius:50%;display:block;box-shadow:0 0 0 1px var(--li)}
.ev-avwahl .ini{display:flex;align-items:center;justify-content:center;font-size:.7rem;background:var(--fl);color:var(--mu);line-height:1.1;text-align:center}
.ev-avwahl label:has(input:checked) img,.ev-avwahl label:has(input:checked) .ini{box-shadow:0 0 0 3px var(--acc)}
.ev-beispiel{border:1px dashed color-mix(in srgb,var(--acc) 50%,#fff);background:color-mix(in srgb,var(--acc) 5%,#fff)}
/* Fassung 350: Hinweisbänder im dunklen Design lesbar */
.ev-bg-dunkel .ev-flash,.ev-bg-dunkel .ev-flash a{color:#3b2f00}
.ev-bg-dunkel .ev-flash.fehler,.ev-bg-dunkel .ev-flash.fehler a{color:#5b1010}

/* ===== Fassung 353: Eventseite individualisierbar, Studio aufgeräumt ===== */
/* Schrift */
body.ev-f-serif,body.ev-f-serif :is(h1,h2,h3,h4,.btn,input,select,textarea,button){font-family:Georgia,"Iowan Old Style","Palatino Linotype",Palatino,"Times New Roman",serif}
body.ev-f-mono,body.ev-f-mono :is(h1,h2,h3,h4,.btn,input,select,textarea,button){font-family:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace}
body.ev-f-mono h1,body.ev-f-mono h2{letter-spacing:-.04em}
body.ev-f-mono .ev-main{font-size:.95rem}
/* Knöpfe */
.ev-b-pille .btn,.ev-b-pille .ev-views a,.ev-b-pille .ev-chips button{border-radius:999px}
.ev.ev-b-rahmen .btn:not(.zwei):not(.acc):not(.rot){background:transparent;color:var(--tx);border:2px solid var(--tx)}
.ev.ev-b-rahmen .btn.acc{background:transparent;color:var(--acc);border:2px solid var(--acc)}
.ev.ev-b-rahmen .ev-hero .btn:not(.zwei):not(.acc){background:transparent;color:#fff;border:2px solid #fff}
/* Abstände */
.ev-d-luftig .ev-main section>h2{margin-top:3em}.ev-d-luftig .karte{padding:22px}.ev-d-luftig .raster{gap:20px}.ev-d-luftig .ev-fakten{gap:16px;margin-top:22px}
.ev-d-kompakt .ev-main section>h2{margin-top:1.2em;font-size:1.25rem}.ev-d-kompakt .karte{padding:11px;margin:8px 0}.ev-d-kompakt .raster{gap:8px}.ev-d-kompakt .ev-fakten{gap:6px;margin-top:8px}
/* Titelbereich-Hintergrund ohne Titelbild */
.ev-hb-zwei .ev-hero{background-image:linear-gradient(135deg,var(--acc),var(--acc2,var(--acc)))}
.ev-hb-flach .ev-hero{background-image:linear-gradient(var(--acc),var(--acc))}
.ev-hb-zwei .ev-hero:not([style])::before,.ev-hb-flach .ev-hero:not([style])::before{background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.3))}
/* Hinweisleiste und Schlusszeile */
.ev-banner{background:color-mix(in srgb,var(--acc) 88%,#000);color:#fff;text-align:center;padding:9px 14px;border-radius:12px;margin:0 0 12px;font-size:.92rem}
.ev-banner a{color:#fff;font-weight:700;text-decoration:underline;margin-left:6px;white-space:nowrap}
.ev-fusszeile{text-align:center;color:var(--mu);margin:34px 0 8px;font-size:.95rem}

/* Studio: Kopf, Startklar-Check, Reiter */
.ev-sk-kopf{display:flex;gap:16px;align-items:center;background:#fff;border:1px solid var(--li);border-radius:20px;padding:14px;margin:0 0 10px;box-shadow:0 14px 36px -28px color-mix(in srgb,var(--acc) 75%,#000)}
.ev-sk-kopf .kv{flex:0 0 132px;height:88px;border-radius:14px;background:linear-gradient(135deg,var(--acc),#0a0a0a) center/cover no-repeat}
.ev-sk-kopf .ki{min-width:0;flex:1}.ev-sk-kopf h1{margin:0;font-size:clamp(1.25rem,3vw,1.8rem);overflow-wrap:anywhere}
.ev-sk-kopf p{margin:4px 0}.ev-sk-kopf .kl{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ev-sk-kopf .kl .mu{overflow-wrap:anywhere}
.ev-check{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;background:var(--fl);border-radius:16px;padding:10px 12px;margin:0 0 6px;font-size:.85rem}
.ev-check .n{margin-right:2px}.ev-check .bar{flex:0 0 90px;height:6px;border-radius:6px;background:var(--li);overflow:hidden}.ev-check .bar i{display:block;height:100%;background:var(--acc);border-radius:6px}
.ev-check a{text-decoration:none;color:var(--tx);border-radius:999px;padding:2px 9px;border:1px solid var(--li);background:#fff}
.ev-check a.ja{border-color:#bfe9d9;background:#e9f9f3;color:#0b7a58}.ev-check a.nein:hover{border-color:var(--acc)}
.ev-reiter2{border:0;gap:6px;padding:6px 2px;margin:6px 0 14px}
.ev-reiter2 a{border:1px solid var(--li);border-radius:999px;padding:7px 13px;background:#fff;font-size:.92rem;border-bottom-width:1px}
.ev-reiter2 a:hover{border-color:var(--acc)}
.ev-reiter2 a.on{background:var(--tx);color:#fff;border-color:var(--tx)}
@media(min-width:701px){.ev-reiter2{position:sticky;top:54px;z-index:20;background:rgba(255,255,255,.93);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}
@media(max-width:560px){.ev-sk-kopf .kv{display:none}}

/* Design-Tab */
.ev-breit .ev-main{max-width:1380px}
.ev-dgrid{display:grid;gap:18px;grid-template-columns:minmax(0,1fr)}
@media(min-width:1100px){.ev-dgrid{grid-template-columns:minmax(0,1fr) minmax(400px,500px);align-items:start}.ev-dvorschau{position:sticky;top:112px}}
.ev-dh{margin:16px 0 2px;font-size:.92rem}
.ev-dform .karte{margin:0 0 12px}
.ev-vorl{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr));gap:10px}
.ev-vl{font:inherit;text-align:left;border:1px solid var(--li);background:#fff;border-radius:14px;padding:8px;cursor:pointer;display:flex;flex-direction:column;gap:3px;color:var(--tx)}
.ev-vl:hover{border-color:var(--acc);box-shadow:0 8px 22px -16px rgba(0,0,0,.4)}
.ev-vl small{color:var(--mu);font-size:.74rem;line-height:1.3}
.ev-vl .vp{display:flex;gap:4px;height:46px;border-radius:9px;padding:6px;margin-bottom:4px}.ev-vl .vp i{flex:1;border-radius:4px;background:rgba(255,255,255,.75)}
.vl-klar .vp{background:linear-gradient(135deg,#7a5cff,#0a0a0a)}
.vl-nacht .vp{background:#0e1017}.vl-nacht .vp i{background:linear-gradient(135deg,#7a5cff,#00b4d8);border-radius:9px}
.vl-magazin .vp{background:#efe9df}.vl-magazin .vp i{background:#fff;border-radius:0;border:1px solid #cfc6b6}
.vl-festival .vp{background:linear-gradient(135deg,#db2777,#ffb020)}.vl-festival .vp i{border-radius:999px}
.vl-technisch .vp{background:#f6f6f8;border:1px solid #0f766e}.vl-technisch .vp i{background:#fff;border:2px solid #0f766e;border-radius:0}
.ev-farb2{margin:4px 0 0}.ev-farb2 input[type=color]{width:56px;height:36px;padding:2px;border:1px solid var(--li);border-radius:10px;background:#fff}
.ev-abs{display:grid;gap:6px}
.ev-ab{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--li);border-radius:12px;padding:6px 10px;background:#fff}
.ev-ab select{width:auto;min-width:62px}
.ev-dleiste{position:sticky;bottom:0;z-index:10;display:flex;flex-wrap:wrap;gap:8px;padding:10px 0;background:linear-gradient(transparent,#fff 28%);margin:0}
.ev-dvorschau{border:1px solid var(--li);border-radius:18px;background:var(--fl);padding:10px;min-width:0}
.ev-dv-kopf{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 8px}
.ev-dv-modi{margin-left:auto;display:inline-flex;border:1px solid var(--li);border-radius:999px;overflow:hidden;background:#fff}
.ev-dv-modi a{padding:4px 12px;font-size:.82rem;text-decoration:none;color:var(--mu)}.ev-dv-modi a.on{background:var(--tx);color:#fff}
.ev-dv-rahmen{background:#fff;border-radius:12px;overflow:hidden;margin:0 auto;border:1px solid var(--li)}
.ev-dv-rahmen iframe{display:block;width:100%;height:min(78vh,820px);min-height:520px;border:0;background:#fff}
.ev-dv-rahmen[data-w=handy]{width:min(100%,390px);border-radius:26px;border:6px solid #1c1c22}
@media(max-width:1099px){.ev-dv-rahmen iframe{height:560px}}
/* Vorschau-Symbole der Optionen */
.vs{position:relative;overflow:hidden}
.vs-hero-gross{background:linear-gradient(var(--acc),var(--acc)) 0 0/100% 72% no-repeat,#f1f1f4}
.vs-hero-kompakt{background:linear-gradient(var(--acc),var(--acc)) 0 0/100% 42% no-repeat,#f1f1f4}
.vs-hero-zentriert{background:linear-gradient(#fff,#fff) 50% 30%/46% 4px no-repeat,linear-gradient(#fff,#fff) 50% 48%/28% 4px no-repeat,linear-gradient(var(--acc),var(--acc)) 0 0/100% 76% no-repeat,#f1f1f4}
.vs-herobg-akzent{background:linear-gradient(135deg,var(--acc),#0a0a0a)}
.vs-herobg-zwei{background:linear-gradient(135deg,var(--acc),var(--acc2,#00b4d8))}
.vs-herobg-flach{background:var(--acc)}
.vs-ecken-rund,.vs-ecken-eckig{background:#fff;border:3px solid var(--acc)}.vs-ecken-rund{border-radius:18px}.vs-ecken-eckig{border-radius:2px}
.vs-karten-schatten{background:#fff;box-shadow:inset 0 0 0 1px #eee,0 8px 14px -6px rgba(0,0,0,.4)}
.vs-karten-flach{background:var(--fl)}
.vs-karten-rahmen{background:#fff;border:3px solid color-mix(in srgb,var(--acc) 40%,#fff)}
.vs-abdunkeln-leicht,.vs-abdunkeln-mittel,.vs-abdunkeln-stark{background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,var(--o))),linear-gradient(135deg,#e8d9b8,#f6efe0)}
.vs-abdunkeln-leicht{--o:.35}.vs-abdunkeln-mittel{--o:.6}.vs-abdunkeln-stark{--o:.85}
.vs-schrift-plex::after,.vs-schrift-serif::after,.vs-schrift-mono::after{content:"Aa";display:block;text-align:center;line-height:46px;font-size:24px;color:var(--tx)}
.vs-schrift-plex::after{font-family:"IBM Plex Sans",system-ui,sans-serif;font-weight:600}.vs-schrift-serif::after{font-family:Georgia,"Times New Roman",serif}.vs-schrift-mono::after{font-family:"IBM Plex Mono",ui-monospace,monospace}
.vs-knopf-voll::after,.vs-knopf-rahmen::after,.vs-knopf-pille::after{content:"";position:absolute;left:20%;right:20%;top:26%;bottom:26%;background:var(--acc);border-radius:8px}
.vs-knopf-rahmen::after{background:transparent;border:2px solid var(--acc)}.vs-knopf-pille::after{border-radius:999px}
.vs-dichte-luftig,.vs-dichte-normal,.vs-dichte-kompakt{background:repeating-linear-gradient(180deg,#cfcfd8 0 5px,transparent 5px var(--g)) 12% 0/76% 100% no-repeat}
.vs-dichte-luftig{--g:17px}.vs-dichte-normal{--g:12px}.vs-dichte-kompakt{--g:9px}

/* ============ Fassung 355: Bausteine, Level, Herz, Kalender, Logos ============ */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ev-mod{margin:0}
.ev-intro{color:var(--mu);margin:-.3em 0 1em;max-width:64ch}
/* Hintergrund je Baustein; --mb ist die Flächenfarbe (auch für „Volle Breite“) */
.ev-mbg-hell,.ev-mbg-akzent,.ev-mbg-dunkel,.ev-mbg-karte{border-radius:22px;padding:2px 22px 22px;margin:16px 0;background:var(--mb)}
.ev-mbg-hell{--mb:color-mix(in srgb,var(--acc) 9%,var(--bg))}
.ev-mbg-karte{--mb:#fff;border:1px solid var(--li)}
.ev-mbg-akzent{--mb:var(--acc);color:#fff}
.ev-mbg-akzent a:not(.btn):not(.ev-kal-menu a){color:#fff}
.ev-mbg-akzent .mu,.ev-mbg-akzent .ev-intro{color:rgba(255,255,255,.86)}
.ev-mbg-akzent .karte,.ev-mbg-akzent .ev-sk,.ev-mbg-akzent .ev-firma,.ev-mbg-akzent .ev-punkt,.ev-mbg-akzent .ev-ortk{color:var(--tx)}
.ev-mbg-akzent .ev-fakten div{background:rgba(255,255,255,.16);color:#fff}.ev-mbg-akzent .ev-fakten span{color:rgba(255,255,255,.88)}
.ev-mbg-dunkel{--mb:#0f1117;color:#f1f2f6}
.ev-mbg-dunkel .mu,.ev-mbg-dunkel .ev-intro{color:#b7bac6}
.ev-mbg-dunkel .karte,.ev-mbg-dunkel .ev-sk,.ev-mbg-dunkel .ev-ortk{background:#1a1d27;border-color:#2a2e3b;color:#f1f2f6}
.ev-mbg-dunkel .ev-fakten div{background:#1a1d27}.ev-mbg-dunkel .ev-fakten span{color:#b7bac6}
.ev-mbg-dunkel .ev-punkt{color:#f1f2f6;border-bottom-color:#2a2e3b}
.ev-mbg-dunkel .ev-tier-kopf h3{color:#f1f2f6}
.ev-mbreite-voll.ev-mbg-hell,.ev-mbreite-voll.ev-mbg-akzent,.ev-mbreite-voll.ev-mbg-dunkel,.ev-mbreite-voll.ev-mbg-karte{border-radius:0;border-width:0;box-shadow:0 0 0 100vmax var(--mb);clip-path:inset(0 -100vmax)}
.ev-mbreite-schmal{max-width:720px;margin-left:auto;margin-right:auto}
.ev-mausr-mitte{text-align:center}.ev-mausr-mitte .ev-intro{margin-left:auto;margin-right:auto}
.ev-mausr-mitte .ev-fakten,.ev-mausr-mitte .ev-tier-kopf,.ev-mausr-mitte .ev-routen,.ev-mausr-mitte .ev-ortk{justify-content:center}
.ev-mausr-mitte .ev-sk,.ev-mausr-mitte .ev-firma{text-align:center;align-items:center}
.ev-mausr-links{text-align:left}
.ev-mabstand-kompakt h2{margin-top:.9em}.ev-mabstand-kompakt .raster,.ev-mabstand-kompakt .ev-tier-raster{gap:6px}.ev-mabstand-kompakt .karte{padding:10px}.ev-mabstand-kompakt .ev-punkt{padding-top:7px;padding-bottom:7px}
.ev-mabstand-luftig{padding-top:20px;padding-bottom:20px}.ev-mabstand-luftig .raster,.ev-mabstand-luftig .ev-tier-raster{gap:20px}.ev-mabstand-luftig .karte{padding:22px}

/* Zahlen auf einen Blick */
.ev-ms-pillen .ev-fakten{display:flex;flex-wrap:wrap;gap:8px}
.ev-ms-pillen .ev-fakten div{display:inline-flex;align-items:baseline;gap:8px;border-radius:999px;padding:8px 18px}
.ev-ms-pillen .ev-fakten b{display:inline;font-size:1.2rem}
.ev-ms-zeile .ev-fakten{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 18px;border-block:1px solid var(--li);padding:10px 4px}
.ev-ms-zeile .ev-fakten div{background:none;padding:0;display:inline-flex;align-items:baseline;gap:7px}.ev-ms-zeile .ev-fakten b{display:inline;font-size:1.15rem}
.ev-ms-zahlen .ev-fakten b{color:var(--acc)}
.ev-mbg-akzent.ev-ms-zahlen .ev-fakten b{color:#fff}
/* Über das Event */
.ev-ms-zitat .ev-text p{font-size:clamp(1.2rem,3vw,1.85rem);line-height:1.35;font-weight:600;letter-spacing:-.01em;max-width:34em}
.ev-ms-zitat.ev-mausr-mitte .ev-text p{margin-inline:auto}
.ev-ms-spalten .ev-text{column-count:2;column-gap:34px}.ev-ms-spalten .ev-text p{margin-top:0}
@media(max-width:700px){.ev-ms-spalten .ev-text{column-count:1}}
.ev-ms-karte .ev-text{background:#fff;border:1px solid var(--li);border-radius:18px;padding:18px 22px;box-shadow:0 10px 30px -24px rgba(0,0,0,.45);color:var(--tx)}.ev-ms-karte .ev-text p{margin:0}

/* Personen */
.ev-sk,.ev-firma,.wand-k{position:relative}
.ev-sk-t{min-width:0}
.ev-sp-logo{display:inline-flex;margin-top:6px;background:#fff;border:1px solid var(--li);border-radius:8px;padding:3px 8px;text-decoration:none}
.ev-sp-logo img{height:24px;max-width:110px;object-fit:contain;display:block}
.ev-sp-mini{height:22px;max-width:70px;object-fit:contain;margin-left:auto;background:#fff;border-radius:5px;padding:1px 4px}
.ev-ms-kreis .ev-sprast{grid-template-columns:repeat(auto-fill,minmax(min(190px,100%),1fr))}
.ev-ms-kreis .ev-sk{background:none;border:0;box-shadow:none;text-align:center;display:flex;flex-direction:column;align-items:center;padding-top:8px}
.ev-ms-kreis .ev-sk:hover{transform:none;box-shadow:none}
.ev-ms-kreis .ev-sk .ev-av{width:124px!important;height:124px!important;font-size:44px!important;box-shadow:0 0 0 4px var(--bg),0 0 0 6px var(--acc);margin-bottom:12px}
.ev-ms-kreis .ev-bio{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ev-ms-gross .ev-sprast{grid-template-columns:repeat(auto-fill,minmax(min(230px,100%),1fr))}
.ev-ms-gross .ev-sk{padding:10px 10px 14px;overflow:hidden}
.ev-ms-gross .ev-sk .ev-av{width:100%!important;height:auto!important;aspect-ratio:1/1;border-radius:14px;font-size:64px!important;margin-bottom:10px}
.ev-ms-gross .ev-sk-t{padding:0 6px}
.ev-ms-gross .ev-bio{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.ev-ms-liste .ev-sprast{grid-template-columns:1fr;gap:8px}
.ev-ms-liste .ev-sk{display:flex;align-items:center;gap:14px;padding:10px 54px 10px 14px}
.ev-ms-liste .ev-sk .ev-av{width:48px!important;height:48px!important;font-size:18px!important;margin:0}
.ev-ms-liste .ev-sk-t{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:2px 14px}.ev-ms-liste .ev-sk-t h3,.ev-ms-liste .ev-sk-t p{margin:0}
.ev-ms-liste .ev-bio{display:none}.ev-ms-liste .ev-sp-logo{margin:0 0 0 auto}
.ev-ms-liste .ev-sk:hover{transform:none}

/* Firmen: Stufen (Level) und Logos */
.ev-tier{margin:0 0 22px}
.ev-tier-kopf{display:flex;align-items:center;gap:10px;margin:0 0 10px;padding-bottom:6px;border-bottom:2px solid var(--tc)}
.ev-tier-kopf h3{margin:0;font-size:1rem}
.ev-tier-sponsor{--tc:#e0a80066}.ev-tier-partner{--tc:#9aa4b266}.ev-tier-aussteller{--tc:#c27c3e55}
.ev-sterne{display:inline-flex;gap:1px}.ev-sterne svg{fill:currentColor}
.ev-sterne.s-sponsor{color:#e0a800}.ev-sterne.s-partner{color:#9aa4b2}.ev-sterne.s-aussteller{color:#c27c3e}
.ev-tier-raster{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(190px,100%),1fr))}
.ev-tier-sponsor .ev-tier-raster{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr))}
.ev-tier-partner .ev-tier-raster{grid-template-columns:repeat(auto-fill,minmax(min(236px,100%),1fr))}
.ev-tier-sponsor .ev-firma{border-color:#e0a80055}
.ev-lk-a{display:block;text-decoration:none;color:inherit}
.ev-lk{display:flex;align-items:center;justify-content:center;width:100%;background:#fff;border:1px solid var(--li);border-radius:14px;padding:10px 16px;height:84px}
.ev-lk.l{height:108px}.ev-lk.s{height:66px;padding:8px 12px}
.ev-lk img{max-width:100%;max-height:100%;object-fit:contain;display:block}
.ev-lk .mono{font-weight:800;font-size:1.7rem;letter-spacing:-.03em;color:var(--acc)}.ev-lk.s .mono{font-size:1.3rem}
.ev-lk.ohne{background:color-mix(in srgb,var(--acc) 8%,#fff)}
.ev-firma{display:flex;flex-direction:column;gap:10px}
.ev-fi-t h3{margin:0 0 2px}
.ev-stand{display:inline-block;font-size:.76rem;color:var(--mu);background:var(--fl);border-radius:999px;padding:1px 9px;margin:2px 0}
.ev-fi-b{margin:4px 0 0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.ev-ms-karten .ev-fi-b{-webkit-line-clamp:unset;display:block}
.ev-tier-raster.wand{grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr));gap:14px}
.ev-tier-sponsor .ev-tier-raster.wand{grid-template-columns:repeat(auto-fill,minmax(min(250px,100%),1fr))}
.ev-tier-partner .ev-tier-raster.wand{grid-template-columns:repeat(auto-fill,minmax(min(190px,100%),1fr))}
.wand-k{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}
.ev-tier-raster.zeilen{grid-template-columns:1fr!important;gap:8px}
.zeilen .ev-firma{flex-direction:row;align-items:center;padding:10px 56px 10px 12px;gap:16px}
.zeilen .ev-lk-a,.zeilen .ev-lk{flex:0 0 150px;width:150px;height:68px}
.zeilen .ev-fi-t{flex:1;min-width:0}
@media(max-width:560px){.zeilen .ev-firma{flex-wrap:wrap}.zeilen .ev-lk-a,.zeilen .ev-lk{flex-basis:110px;width:110px}}
.ev-bg-dunkel .ev-lk{background:#fff}.ev-bg-dunkel .ev-sp-logo{background:#fff}

/* Ort mit Karte */
.ev-ortk{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}
.ev-pin{width:58px;height:58px;border-radius:18px;background:var(--acc);color:#fff;display:grid;place-items:center;flex:0 0 auto}.ev-pin svg{fill:currentColor}
.ev-routen{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 0}

/* Level (Zugangsstufe) */
.ev-lvl{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:1px 9px 1px 6px;font-weight:700;font-size:.74rem;white-space:nowrap;line-height:1.5}
.ev-lvl svg{width:13px;height:13px;fill:currentColor}
.ev-lvl.l1{background:#eceef3;color:#4a4f5c}
.ev-lvl.l2{background:linear-gradient(135deg,#ffe58a,#f2b705);color:#4a3400;box-shadow:inset 0 0 0 1px #d9a20066}
.ev-lvl-leg{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 12px;font-size:.82rem}
.ev-punkt.lvl-2{box-shadow:inset 5px 0 0 #f2b705;background:linear-gradient(90deg,rgba(242,183,5,.13),transparent 45%)}
.ev-prog[data-ansicht=erweitert] .ev-punkt.lvl-2{box-shadow:inset 5px 0 0 #f2b705,0 8px 26px -20px rgba(0,0,0,.35);background:linear-gradient(90deg,rgba(242,183,5,.13),#fff 50%)}
.ev-fk.lvl-2 .ev-fk-in{box-shadow:inset 0 0 0 2px #f2b705;background:color-mix(in srgb,#f2b705 18%,#fff)}
.ev-lvl-pin{position:absolute;right:30px;top:3px;color:#c99100;z-index:2;line-height:0}.ev-lvl-pin svg{width:13px;height:13px;fill:currentColor}
.ev-gesperrt{color:#8a5f00;margin:6px 0 0}

/* Herz-Favoriten */
.ev-pa{position:absolute;top:8px;right:8px;display:flex;gap:6px;align-items:center;z-index:5}
.ev-sk>.ev-herzf,.ev-firma>.ev-herzf,.wand-k>.ev-herzf{position:absolute;top:8px;right:8px;z-index:5}
.ev-herzf{margin:0;display:inline-flex}
.ev-herz{appearance:none;border:0;padding:0;cursor:pointer;background:rgba(255,255,255,.94);color:#8b8fa0;width:36px;height:36px;border-radius:50%;display:inline-grid;place-items:center;box-shadow:0 1px 5px rgba(0,0,0,.2);text-decoration:none;transition:transform .15s,color .15s}
.ev-herz svg{fill:none;stroke:currentColor;stroke-width:2;width:20px;height:20px}
.ev-herz:hover{color:#e0245e;transform:scale(1.08)}
.ev-herz.on{color:#e0245e}.ev-herz.on svg{fill:currentColor}
.ev-herz:focus-visible,.ev-kal summary:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.ev-herz.puls{animation:evherz .45s}
@keyframes evherz{0%{transform:scale(1)}35%{transform:scale(1.4)}70%{transform:scale(.92)}100%{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.ev-herz.puls{animation:none}.ev-herz{transition:none}}
.ev-punkt:has(.ev-pa) .ev-meta,.ev-punkt:has(.ev-pa) .ev-pk>h3{padding-right:88px}
.ev-fk-in:has(.ev-pa){padding-right:34px}
.ev-fk .ev-pa{top:3px;right:3px}.ev-fk .ev-herz{width:26px;height:26px}.ev-fk .ev-herz svg{width:15px;height:15px}
.ev-fk-kal{margin-top:8px}.ev-fk-kal .ev-kal-menu{right:auto;left:0}

/* Zum Kalender */
.ev-kal{position:relative;display:inline-block}
.ev-kal summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;border:1px solid #cfcfd6;background:#fff;font-size:.85rem;font-weight:600;color:var(--tx);min-height:36px}
.ev-kal summary::-webkit-details-marker{display:none}
.ev-kal svg{fill:currentColor;flex:0 0 auto}
.ev-kal[open] summary{border-color:var(--acc);box-shadow:0 0 0 3px color-mix(in srgb,var(--acc) 20%,transparent)}
.ev-kal-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:45;min-width:236px;background:#fff;border:1px solid var(--li);border-radius:14px;box-shadow:0 18px 40px -16px rgba(0,0,0,.4);padding:6px;display:flex;flex-direction:column}
.ev-kal-menu.rechts{right:auto;left:0}
.ev-kal-menu a{padding:10px 12px;border-radius:9px;text-decoration:none;font-size:.88rem;color:var(--tx)!important;white-space:nowrap}
.ev-kal-menu a:hover,.ev-kal-menu a:focus-visible{background:var(--fl)}
.ev-pa .ev-kal summary{width:36px;height:36px;padding:0;justify-content:center;box-shadow:0 1px 5px rgba(0,0,0,.2);border-color:transparent;background:rgba(255,255,255,.94)}
.ev-pa .ev-kal summary span{display:none}
.ev-fk .ev-kal summary{min-height:30px}
.ev-aktionen .ev-kal-menu{right:auto;left:0}

/* Leiste unter dem Titelbereich und im Tab „Meine Agenda“ */
.ev-aktionen{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:14px 0 6px}
.ev-meine{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;border:1px solid #cfcfd6;background:#fff;text-decoration:none;font-weight:600;font-size:.85rem;min-height:36px;color:var(--tx)}
.ev-meine:hover{border-color:var(--acc)}
.ev-meine .ev-herz{width:auto;height:auto;background:none;box-shadow:none;display:inline-flex}.ev-meine .ev-herz svg{width:17px;height:17px}
.ev-meine.kal svg{fill:currentColor}.ev-meine.aus{opacity:.55}
.ev-meine.hinweis{border-style:dashed;color:var(--mu);font-weight:500}
.ev-favs{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:10px}
.ev-favk{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--li);border-radius:14px;background:#fff;text-decoration:none;color:inherit}
.ev-favk span{display:flex;flex-direction:column;min-width:0;flex:1}.ev-favk small{color:var(--mu)}
.ev-favk .ev-lk{width:84px;flex:0 0 84px;height:46px;padding:4px 8px}.ev-favk .ev-sp-logo{margin:0}
.ev-toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translate(-50%,16px);opacity:0;pointer-events:none;background:#0a0a0a;color:#fff;padding:11px 16px;border-radius:12px;font-size:.9rem;z-index:90;max-width:min(92vw,520px);transition:opacity .2s,transform .2s}
.ev-toast.zeigt{opacity:1;transform:translate(-50%,0)}.ev-toast.fehler{background:#b3261e}

/* Event-Studio: Bausteine */
.ev-standardknopf{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}
.ev-bvorl{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(170px,100%),1fr));gap:8px;margin:6px 0 14px}
.ev-bv{font:inherit;text-align:left;border:1px solid var(--li);background:#fff;border-radius:12px;padding:8px 10px;cursor:pointer;display:flex;flex-direction:column;gap:2px;color:var(--tx)}
.ev-bv:hover{border-color:var(--acc)}.ev-bv small{color:var(--mu);font-size:.74rem;line-height:1.3}
.ev-mods{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.ev-modz{border:1px solid var(--li);border-radius:14px;background:#fff}
.ev-modz.zieht{box-shadow:0 10px 28px rgba(0,0,0,.22);border-color:var(--acc);opacity:.93}
.ev-modz.aus .kopf label span{text-decoration:line-through;color:var(--mu)}
.ev-modz .kopf{display:flex;align-items:center;gap:10px;padding:6px 10px;min-height:48px}
.ev-modz .griff{cursor:grab;touch-action:none;user-select:none;font-size:22px;line-height:1;border:0;background:none;color:var(--mu);padding:8px 6px}
.ev-modz .griff:focus-visible{outline:2px solid var(--acc);border-radius:8px}
.ev-modz .stiln{margin-left:auto;font-size:.76rem;color:var(--mu);background:var(--fl);border-radius:999px;padding:2px 10px;white-space:nowrap}
.ev-modz .pf{display:inline-flex;gap:4px}.ev-modz .pf button{border:1px solid var(--li);background:#fff;border-radius:8px;width:32px;height:32px;cursor:pointer;color:var(--tx)}
@media(max-width:560px){.ev-modz .stiln{display:none}.ev-modz .kopf{margin-right:0}.ev-modz .pf{margin-left:auto}}
.gest>summary{cursor:pointer;padding:9px 14px;font-size:.88rem;font-weight:600;border-top:1px solid var(--li)}
.gest-in{padding:4px 14px 14px}
.ev-mz{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:4px 10px}
.ev-opt .vm{color:var(--tx);display:flex;align-items:center;justify-content:center;background:var(--fl)}.ev-opt .vm svg{height:100%;width:auto;max-width:100%}
.ev-dirty{color:#8a5f00;font-size:.85rem;margin-right:10px}
/* Knöpfe, die als Link gesetzt sind, behalten ihre Schriftfarbe (der Link-Standard „erbt“ sonst die dunkle Textfarbe) */
:where(.ev) a.btn{color:#fff}:where(.ev) a.btn.zwei{color:var(--tx)}:where(.ev) a.btn.rot{color:var(--er)}
/* Feinschliff F355 */
.ev-lk-a{width:100%}
.ev-sk>.ev-herzf,.ev-firma>.ev-herzf,.wand-k>.ev-herzf{align-self:flex-end;left:auto}
.ev-sp-mini{height:28px;max-width:96px}
.wand-k .ev-lk{height:84px}.ev-tier-sponsor .wand-k .ev-lk{height:108px}.ev-tier-aussteller .wand-k .ev-lk{height:66px}
.ev-sk>a.ev-herz,.ev-firma>a.ev-herz,.wand-k>a.ev-herz{position:absolute;top:8px;right:8px;z-index:5;align-self:flex-end;left:auto}

/* Fassung 357: zweiter Weg im Hero (anmelden) */
.ev-hero .ev-hero-login{display:inline-block;margin:10px 0 0 14px;color:inherit;opacity:.9;font-size:.92rem;text-decoration:underline;text-underline-offset:3px}
.ev-hero .ev-hero-login:hover{opacity:1}
@media(max-width:600px){.ev-hero .ev-hero-login{display:block;margin:12px 0 0}}
/* Fassung 357: Willkommens-Schritt nach der Anmeldung */
.evs-wrap{max-width:720px;margin:0 auto}
.evs-kopf{display:flex;gap:14px;align-items:center;margin:0 0 6px}
.evs-bar{height:8px;border-radius:99px;background:#eceef2;overflow:hidden;margin:10px 0 18px}
.evs-bar i{display:block;height:100%;background:linear-gradient(90deg,#7a5cff,#00b4d8,#12d8a0);border-radius:99px;transition:width .25s}
.evs-gruppe{margin:0 0 20px}
.evs-gruppe h2{font-size:1.02rem;margin:0 0 4px}
.evs-gruppe p{margin:0 0 10px}
.evs-chips{display:flex;flex-wrap:wrap;gap:8px}
.evs-chip{position:relative}
.evs-chip input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.evs-chip span{display:inline-block;padding:9px 14px;border:1px solid #d9dce3;border-radius:999px;background:#fff;font-size:.95rem;line-height:1.2}
.evs-chip input:focus-visible + span{outline:2px solid var(--acc);outline-offset:2px}
.evs-chip input:checked + span{background:var(--acc);border-color:var(--acc);color:#fff}
.evs-zeile{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:22px}
.evs-li{display:flex;gap:12px;align-items:center;border:1px dashed #d9dce3;border-radius:14px;padding:12px 14px;margin:0 0 22px;color:#666}
.evs-li .pille{margin-left:auto}
.evs-wrap .zeile{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 6px}
@media(max-width:600px){.evs-wrap .zeile{grid-template-columns:1fr}}
.evs-wrap input:not([type=checkbox]){width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid #d9dce3;border-radius:10px;font:inherit;background:#fff}
.evs-wrap input:not([type=checkbox]):focus{outline:2px solid var(--acc);outline-offset:1px;border-color:transparent}
.evs-zeile .btn:not(.acc){background:#fff;color:#111;border:1px solid #d9dce3}

/* ===== Fassung 358: Timetable (aufklappbare Karten), Level-Grafik ===== */
.ev-tt{display:none}
.ev-prog[data-ansicht=timetable] .ev-tt{display:block}
.ev-prog[data-ansicht=timetable] .ev-slides{display:none}
.ev-ttg{scroll-margin-top:118px;margin:0 0 22px}
.ev-tt-liste{display:flex;flex-direction:column;gap:10px}
.ev-lv{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:.76rem;font-weight:700;line-height:1;color:var(--tx)}
.ev-lv .bars{display:inline-flex;align-items:center;gap:4px;height:12px}
.ev-lv .bars i{display:block;width:10px;height:10px;border-radius:50%;box-sizing:border-box;border:1.5px solid color-mix(in srgb,var(--tx) 28%,transparent);background:transparent}
.ev-lv.lv1{--lc:#12d8a0}.ev-lv.lv2{--lc:#00b4d8}.ev-lv.lv3{--lc:#7a5cff}.ev-lv.lv4{--lc:#ff5db1}
.ev-lv.lv1 i:nth-child(-n+1),.ev-lv.lv2 i:nth-child(-n+2),.ev-lv.lv3 i:nth-child(-n+3),.ev-lv.lv4 i:nth-child(-n+4){background:var(--lc);border-color:var(--lc)}
.ev-lv-leg{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;margin:0 0 14px;padding:10px 14px;background:var(--fl);border-radius:14px;font-size:.82rem}
.ev-lv-leg .t{font-weight:700}.ev-lv-leg .e{display:inline-flex;align-items:center;gap:7px}.ev-lv-leg small{color:var(--mu);font-size:.8rem}
.ev-tt-k{position:relative;background:#fff;border:1px solid var(--li);border-left:5px solid var(--tc,#ccc);border-radius:16px;box-shadow:0 6px 22px -18px rgba(0,0,0,.4);transition:box-shadow .15s}
.ev-tt-k:has(details[open]){box-shadow:0 14px 34px -18px rgba(0,0,0,.45)}
.ev-tt-k.lvl-2{background:linear-gradient(90deg,rgba(242,183,5,.12),#fff 55%)}
.ev-tt-k summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;padding:14px 56px 14px 16px;border-radius:16px;-webkit-tap-highlight-color:transparent}
.ev-tt-k summary::-webkit-details-marker{display:none}
.ev-tt-k summary:hover{background:rgba(0,0,0,.025)}
.ev-tt-k summary:focus-visible{outline:2px solid var(--acc);outline-offset:2px}
.ev-tt-zeit{flex:0 0 52px;display:flex;flex-direction:column;line-height:1.2}.ev-tt-zeit b{font-size:1.02rem}.ev-tt-zeit small{color:var(--mu)}
.ev-tt-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:5px}
.ev-tt-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:.78rem;color:var(--mu)}
.ev-tt-meta .ev-typ{background:color-mix(in srgb,var(--tc,#ccc) 20%,#fff);color:var(--tx);border-radius:999px;padding:2px 9px;font-weight:700}
.ev-tt-titel{font-weight:700;font-size:1.04rem;line-height:1.3;overflow-wrap:anywhere}
.ev-tt-namen{font-size:.88rem;color:var(--mu);line-height:1.3}
.ev-tt-who{flex:0 0 auto;display:flex;align-items:center;gap:12px}
.ev-tt-who .fotos{display:inline-flex}.ev-tt-who .fotos .ev-av{border:2px solid #fff;margin-left:-10px;box-shadow:0 1px 4px rgba(0,0,0,.18)}.ev-tt-who .fotos .ev-av:first-child{margin-left:0}
.ev-tt-who .logos{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.ev-tt-logo{height:26px;max-width:92px;object-fit:contain;background:#fff;border-radius:6px;padding:2px 5px;border:1px solid var(--li)}
.ev-tt-pfeil{position:absolute;right:16px;bottom:12px;color:var(--mu);transition:transform .2s;line-height:0}
.ev-tt-herz{position:absolute;right:8px;top:8px;z-index:3}
.ev-tt-d[open] .ev-tt-pfeil{transform:rotate(180deg);color:var(--acc)}
.ev-tt-auf{padding:2px 18px 18px 16px;border-top:1px dashed var(--li);margin:0 0 0 0;animation:evtt .22s ease}
@keyframes evtt{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.ev-tt-fakten{display:flex;flex-wrap:wrap;gap:10px 28px;margin:14px 0 4px}
.ev-tt-fakten>div{display:flex;flex-direction:column;gap:5px;font-size:.9rem}.ev-tt-fakten small{color:var(--mu);font-size:.76rem;text-transform:uppercase;letter-spacing:.04em}
.ev-tt-auf .ev-bs{margin:12px 0;line-height:1.55;display:block;-webkit-line-clamp:unset}
.ev-tt-sps{list-style:none;margin:12px 0 4px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:10px}
.ev-tt-sps li>a,.ev-tt-sps li>div{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;background:var(--fl);border-radius:14px;padding:8px 12px}
.ev-tt-sps .t{display:flex;flex-direction:column;min-width:0;flex:1;line-height:1.3}.ev-tt-sps small{color:var(--mu);font-size:.8rem}
.ev-tt-sps .ev-tt-logo{margin-left:auto;flex:0 0 auto}
.ev-tt-akt{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}
.ev-bg-dunkel .ev-tt-k{background:#161924;border-color:#2a2e3b;color:var(--tx)}
.ev-bg-dunkel .ev-tt-k.lvl-2{background:linear-gradient(90deg,rgba(242,183,5,.16),#161924 55%)}
.ev-bg-dunkel .ev-tt-meta .ev-typ{background:color-mix(in srgb,var(--tc,#ccc) 30%,#161924)}
.ev-bg-dunkel .ev-tt-who .fotos .ev-av{border-color:#161924}
@media(max-width:700px){
  .ev-tt-k summary{flex-wrap:wrap;gap:8px 10px;padding:13px 12px 13px 12px;position:relative}
  .ev-tt-zeit{flex:0 0 auto;flex-direction:row;gap:6px;align-items:baseline}
  .ev-tt-main{flex:1 1 100%;order:2}
  .ev-tt-k summary{padding-right:44px}
  .ev-tt-zeit{order:1}
  .ev-tt-who{order:3;flex:1 1 100%;justify-content:space-between}
  .ev-tt-who .logos{flex-direction:row;flex-wrap:wrap;justify-content:flex-end}
  .ev-tt-pfeil{right:12px;bottom:10px}
  .ev-tt-who{padding-right:26px}
  .ev-tt-herz{right:4px;top:4px}
  .ev-tt-titel{font-size:1rem}
  .ev-tt-auf{padding:2px 14px 16px 12px}
  .ev-tt-sps{grid-template-columns:1fr}
  .ev-tt-logo{height:24px;max-width:84px}
  .ev-lv-leg{gap:6px 12px;padding:9px 12px}
}
@media(prefers-reduced-motion:reduce){.ev-tt-auf{animation:none}.ev-tt-pfeil{transition:none}}

/* ===== Fassung 361: Eventseite — Name links oben, Start im Menü, sticky Kopf ===== */
html{scroll-padding-top:68px;scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.ev-ewm{flex:0 1 auto;min-width:0;max-width:44%;text-decoration:none;color:var(--tx);display:flex;align-items:center}
.ev-ename{font-weight:700;font-size:1.02rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ev-elogo{max-height:34px;max-width:160px;object-fit:contain}
.ev-powered{text-align:center;margin:28px 0 8px;font-size:.82rem}.ev-powered a{color:var(--mu);text-decoration:none}.ev-powered a:hover{color:var(--acc)}
@media(max-width:700px){.ev-ewm{max-width:42%}.ev-ename{font-size:.88rem;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.15}}

/* Fassung 362: Kopf der Eventseite bündig mit der Inhaltsspalte (links und rechts) */
.ev-top:has(.ev-ewm){padding-left:max(16px,calc((100vw - 1040px)/2 + 16px));padding-right:max(16px,calc((100vw - 1040px)/2 + 16px))}
.ev-breit .ev-top:has(.ev-ewm){padding-left:max(16px,calc((100vw - 1380px)/2 + 16px));padding-right:max(16px,calc((100vw - 1380px)/2 + 16px))}
.ev-top:has(.ev-ewm) .ev-nav{justify-content:flex-end}
.ev-top:has(.ev-ewm) .ev-who:empty{display:none}
@media(max-width:700px){.ev-top:has(.ev-ewm) .ev-nav{justify-content:flex-start}}

/* Fassung 363: Zurück-Pille im Kopf der Eventseite */
.ev-zurueck{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--fl);color:var(--tx);text-decoration:none;font-size:.85rem;font-weight:600;white-space:nowrap}
.ev-zurueck:hover{background:color-mix(in srgb,var(--acc) 14%,#fff)}
.ev-bg-dunkel .ev-zurueck{background:#222637;color:var(--tx)}
@media(max-width:700px){.ev-zurueck{padding:0;min-width:40px;min-height:40px;justify-content:center}.ev-zurueck .t{display:none}.ev-zurueck span[aria-hidden]{font-size:1.1rem;line-height:1}}
/* Fassung 363: am Handy bleibt im Kopf von Studio/App Platz für „Meine Events“ — der ID-Knopf zeigt nur das Haus */
@media(max-width:700px){.ev-top:not(:has(.ev-ewm)) .ev-zuid{font-size:0;padding:0;min-width:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:0}.ev-top:not(:has(.ev-ewm)) .ev-zuid span{font-size:1.15rem}.ev-top:not(:has(.ev-ewm)){gap:8px}.ev-top:not(:has(.ev-ewm)) .ev-wm img{height:22px}}

/* ===== Fassung 364: Platzanzeige, Favoriten-Bereich ===== */
.ev-pl{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:2px 9px;font-size:.74rem;font-weight:700;white-space:nowrap;background:#eaf7f1;color:#0b6b46}
.ev-pl i{width:7px;height:7px;border-radius:50%;background:currentColor}
.ev-pl.begrenzt{background:#eef0f5;color:#4a4f5c}.ev-pl.knapp{background:#fff1d6;color:#8a5200}.ev-pl.voll{background:#fde4e4;color:#a11d1d}
.ev-plb{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0 4px;font-size:.88rem;font-weight:600}
.ev-plb b{flex:1 1 140px;max-width:260px;height:8px;border-radius:99px;background:#e6e8ee;overflow:hidden;display:block}
.ev-plb em{display:block;height:100%;border-radius:99px;background:#12d8a0}.ev-plb.knapp em{background:#f2a100}.ev-plb.voll em{background:#e04646}
.ev-plb.knapp span{color:#8a5200}.ev-plb.voll span{color:#a11d1d}
.ev-bg-dunkel .ev-pl{background:#16372c;color:#9ff0cf}.ev-bg-dunkel .ev-pl.begrenzt{background:#262a38;color:#c9cdd8}.ev-bg-dunkel .ev-pl.knapp{background:#3f2e08;color:#ffd57a}.ev-bg-dunkel .ev-pl.voll{background:#431a1a;color:#ffb4b4}
.ev-fav2{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:10px;margin:0 0 6px}
.ev-fk2{position:relative;display:flex;align-items:center;gap:12px;padding:10px 54px 10px 12px;border:1px solid var(--li);border-radius:14px;background:#fff}
.ev-fk2 a.l{display:flex;align-items:center;gap:12px;flex:1;min-width:0;text-decoration:none;color:inherit}
.ev-fk2 .t{display:flex;flex-direction:column;min-width:0;line-height:1.3}.ev-fk2 small{color:var(--mu)}
.ev-fk2 .ev-herz{position:absolute;right:8px;top:50%;transform:translateY(-50%)}
.ev-fk2 .ev-lk{width:84px;flex:0 0 84px;height:46px;padding:4px 8px}
.ev-fav-zahl{display:inline-block;min-width:22px;text-align:center;margin-left:6px;background:var(--fl);border-radius:99px;font-size:.78rem;padding:1px 7px}

/* ===== Fassung 365: Landingpage — flächige Porträts, Lightbox, Video, Abstände, Festival-Look ===== */
.ev-sp-grp{margin:26px 0 12px;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mu);display:flex;align-items:center;gap:10px}
.ev-sp-grp::after{content:"";flex:1;height:1px;background:var(--li)}
.ev-sp-grp.top{color:var(--acc)}
.ev-sk{position:relative}
.ev-ms-flaeche .ev-sk{padding:0;overflow:hidden}
.ev-sk-btn{all:unset;box-sizing:border-box;display:flex;flex-direction:column;width:100%;cursor:pointer;text-align:left;position:relative}
.ev-sk-btn:focus-visible{outline:3px solid var(--acc);outline-offset:-3px;border-radius:inherit}
.ev-sk .ev-sk-t{display:flex;flex-direction:column;gap:2px;min-width:0}
.ev-ms-flaeche .ev-sk-t{padding:10px 12px 12px}
.ev-sk .ev-sk-t .n{font-size:1rem;line-height:1.2;overflow-wrap:anywhere}
.ev-sk .ev-sk-t .u{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ev-fl-w{display:block;position:relative;aspect-ratio:4/5;overflow:hidden;background:linear-gradient(160deg,color-mix(in srgb,var(--acc) 35%,#fff),color-mix(in srgb,var(--acc) 10%,#e9ecf2))}
.ev-fl{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 20%;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.ev-fl.ini{display:flex;align-items:center;justify-content:center;font-size:clamp(2.4rem,9vw,4rem);font-weight:800;color:hsl(var(--hue,260) 55% 32%);background:linear-gradient(160deg,hsl(var(--hue,260) 80% 88%),hsl(calc(var(--hue,260) + 40) 75% 80%))}
.ev-sk:hover .ev-fl{transform:scale(1.05)}
.ev-sk-btn .ev-sk-t.ev-sk-t{position:relative}
.ev-sk:has(.ev-fl-w) .ev-sk-t{position:absolute;left:0;right:0;bottom:0;padding:34px 12px 11px;color:#fff;background:linear-gradient(0deg,rgba(8,10,20,.82),rgba(8,10,20,.45) 55%,transparent)}
.ev-sk:has(.ev-fl-w) .ev-sk-t .mu{color:rgba(255,255,255,.82)}
.ev-sk:has(.ev-fl-w){border:0}
.ev-ms-kreis .ev-sk-btn,.ev-ms-karten .ev-sk-btn,.ev-ms-gross .ev-sk-btn{align-items:center;text-align:center}
.ev-ms-karten .ev-sk-btn{align-items:flex-start;text-align:left}
.ev-ms-gross .ev-sk-btn{align-items:stretch;text-align:left}
.ev-ms-kreis .ev-sk{overflow:visible;padding:14px 8px 10px}
.ev-ms-kreis .ev-sk-btn{padding:6px 4px}
.ev-ms-liste .ev-sk-btn{flex-direction:row;align-items:center;gap:14px;text-align:left}
.ev-ms-liste .ev-sk .ev-sk-t{flex-direction:row;flex-wrap:wrap;align-items:center;gap:2px 14px}
.ev-fl-tag{position:absolute;left:8px;top:8px;background:linear-gradient(135deg,#ffd23f,#ff5db1);color:#1b1030;font-weight:800;font-size:.74rem;border-radius:99px;padding:3px 9px;box-shadow:0 4px 14px -4px rgba(0,0,0,.4)}
.ev-fl-tag.sp{background:linear-gradient(135deg,#12d8a0,#00b4d8);color:#05202a}
.ev-sprast.top{grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr))}
.ev-sprast.top .ev-sk{box-shadow:0 18px 40px -22px color-mix(in srgb,var(--acc) 80%,#000)}
.ev-ms-flaeche .ev-sprast{grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr));gap:14px}
.ev-sp-bg .ev-fl-w{background:linear-gradient(0deg,rgba(0,0,0,.25),rgba(0,0,0,.25)),var(--spbg,none) center/cover,var(--acc)}
.ev-sp-bg .ev-fl{object-fit:contain;object-position:50% 100%}
.ev-sk>.ev-herzf,.ev-sk>a.ev-herz{z-index:6}
@media(max-width:640px){
  .ev-ms-flaeche .ev-sprast,.ev-sprast.top{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .ev-sk .ev-sk-t .n{font-size:.92rem}.ev-sk .ev-sk-t .u{font-size:.76rem;-webkit-line-clamp:1}
  .ev-bio{display:none}
}
/* Lightbox */
.ev-lb-an,.ev-lb-an body{overflow:hidden}
.ev-lb{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(8,10,22,.72);backdrop-filter:blur(8px);animation:evlbIn .18s ease-out}
.ev-lb[hidden]{display:none}
@keyframes evlbIn{from{opacity:0}to{opacity:1}}
.ev-lb-box{position:relative;width:min(880px,100%);max-height:calc(100dvh - 36px);overflow:auto;background:#fff;color:#14161f;border-radius:26px;box-shadow:0 40px 90px -30px rgba(0,0,0,.7);overscroll-behavior:contain;animation:evlbUp .22s cubic-bezier(.2,.8,.2,1)}
@keyframes evlbUp{from{transform:translateY(22px) scale(.97);opacity:0}to{transform:none;opacity:1}}
.ev-lb-in{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr)}
.ev-lb-bild{position:relative;min-height:320px;background:var(--acc)}
.ev-lb-bild .ev-fl{position:absolute;inset:0;height:100%;object-position:50% 18%}.ev-lb-bild .ev-fl.ini{position:absolute;inset:0}
.ev-lb-bild::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.25))}
.ev-lb-text{padding:28px 28px 26px;min-width:0}
.ev-lb-text h3{margin:6px 0 2px;font-size:clamp(1.4rem,3.4vw,2rem);line-height:1.1}
.ev-lb-text .mu{margin:0 0 10px}
.ev-lb-tag{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;border-radius:99px;padding:4px 10px;background:linear-gradient(135deg,#12d8a0,#00b4d8);color:#05202a}
.ev-lb-tag.top{background:linear-gradient(135deg,#ffd23f,#ff5db1);color:#1b1030}
.ev-lb-bio{line-height:1.55;margin:12px 0}
.ev-lb-text h4{margin:18px 0 6px;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:#6b7080}
.ev-lb-sess{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.ev-lb-sess li{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:9px 12px;border:1px solid #e6e8ee;border-radius:12px}
.ev-lb-sess a:not(.btn){color:inherit;text-decoration:none;font-weight:600;min-width:0;overflow-wrap:anywhere}.ev-lb-sess small{color:#6b7080;font-weight:500}
.ev-lb-herz{margin-top:14px}.ev-lb-herz .ev-herzf,.ev-lb-herz a.ev-herz{position:static}
.ev-lb-text .ev-sp-logo img{max-height:30px}
.ev-lb-x,.ev-lb-pv,.ev-lb-nx{all:unset;box-sizing:border-box;position:absolute;z-index:3;width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.92);color:#14161f;font-size:26px;line-height:1;cursor:pointer;box-shadow:0 6px 18px -6px rgba(0,0,0,.45)}
.ev-lb-x{top:12px;right:12px}.ev-lb-pv{left:12px;top:150px}.ev-lb-nx{right:12px;top:150px}
.ev-lb-x:focus-visible,.ev-lb-pv:focus-visible,.ev-lb-nx:focus-visible{outline:3px solid var(--acc);outline-offset:2px}
.ev-lb-z{position:absolute;left:16px;top:16px;z-index:3;font-size:.78rem;font-weight:700;color:#fff;background:rgba(0,0,0,.45);border-radius:99px;padding:3px 10px}
@media(max-width:700px){
  .ev-lb{padding:0;align-items:flex-end}
  .ev-lb-box{width:100%;max-height:92dvh;border-radius:26px 26px 0 0;animation-name:evlbSheet}
  @keyframes evlbSheet{from{transform:translateY(100%)}to{transform:none}}
  .ev-lb-in{grid-template-columns:1fr}
  .ev-lb-bild{min-height:0;aspect-ratio:4/4.3;max-height:46dvh}
  .ev-lb-text{padding:18px 18px 24px}
  .ev-lb-pv,.ev-lb-nx{top:calc(min(46dvh,100vw*1.075)/2 - 22px)}
}
@media(prefers-reduced-motion:reduce){.ev-lb,.ev-lb-box{animation:none}.ev-fl{transition:none}}
/* Video */
.ev-video{margin:22px 0 4px;border-radius:24px;overflow:hidden;background:#0b0d16;aspect-ratio:16/9;position:relative;box-shadow:0 30px 60px -34px rgba(0,0,0,.6)}
.ev-video iframe,.ev-video video{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}
.ev-video-b{all:unset;box-sizing:border-box;cursor:pointer;position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:18px;text-align:center;color:#fff;background:radial-gradient(120% 120% at 20% 10%,color-mix(in srgb,var(--acc) 70%,#000),#0b0d16 70%)}
.ev-video-b .pl{width:76px;height:76px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.18);backdrop-filter:blur(6px);border:2px solid rgba(255,255,255,.7);transition:transform .2s}
.ev-video-b:hover .pl{transform:scale(1.08)}.ev-video-b:focus-visible{outline:3px solid #fff;outline-offset:-6px}
.ev-video-b .vt{font-weight:800;font-size:clamp(1.05rem,3vw,1.6rem)}.ev-video-b small{opacity:.75}
/* Abstände im Programm: in jeder Ansicht Luft zwischen den Einträgen */
.ev-prog .ev-punkt+.ev-punkt{margin-top:6px}
.ev-prog[data-ansicht=liste] .ev-punkt+.ev-punkt{margin-top:8px}
.ev-prog[data-ansicht=erweitert] .ev-items{display:grid;gap:14px}
.ev-prog[data-ansicht=erweitert] .ev-punkt+.ev-punkt{margin-top:0}
.ev-prog[data-ansicht=minimal] .ev-punkt+.ev-punkt{margin-top:5px}
.ev-prog .ev-tt-k+.ev-tt-k{margin-top:12px}
.ev-prog .ev-tt-k{margin-bottom:0}
.ev-prog .ev-tag-kopf,.ev-prog .ev-track-kopf{margin-top:22px}
/* Festival-Look: Abschnitte mit mehr Luft und Kontrast */
.ev-mod h2{font-size:clamp(1.6rem,4.4vw,2.5rem);letter-spacing:-.02em;line-height:1.05}
.ev-hero h1{letter-spacing:-.03em}
.ev-hero .art{background:linear-gradient(135deg,#ffd23f,#ff5db1);color:#1b1030;font-weight:800;border-radius:99px}
.ev-m-speaker{padding-top:10px}
@media(max-width:640px){.ev-mod{padding-left:0;padding-right:0}.ev-mod h2{font-size:1.5rem}.ev-intro{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}}

/* ===== Fassung 366: Menü am Handy als Leiste unten (wie bei Apps), Kopfzeile bleibt oben fest ===== */
.ev-nav .ic{display:none}
@media(max-width:700px){
  .ev-nav.ev-nav-unten{position:fixed;left:0;right:0;bottom:0;z-index:60;flex:none;gap:0;justify-content:space-around;overflow:visible;
    padding:6px max(6px,env(safe-area-inset-left,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(6px,env(safe-area-inset-right,0px));
    background:rgba(255,255,255,.92);-webkit-backdrop-filter:saturate(180%) blur(14px);backdrop-filter:saturate(180%) blur(14px);border-top:1px solid var(--li);box-shadow:0 -10px 30px -18px rgba(0,0,0,.35)}
  .ev-nav-unten a{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px 2px;min-height:52px;border-radius:14px;font-size:.68rem;font-weight:600;color:var(--mu);background:none;line-height:1.1}
  .ev-nav-unten a .ic{display:block;width:23px;height:23px}
  .ev-nav-unten a .tx{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .ev-nav-unten a.on,.ev-nav-unten a:active{background:none;color:var(--acc)}
  .ev-nav-unten a.on .ic{filter:drop-shadow(0 4px 8px color-mix(in srgb,var(--acc) 55%,transparent))}
  .ev-nav-unten a.ev-nav-akt{color:var(--acc)}
  body.ev:has(.ev-nav-unten){padding-bottom:calc(66px + env(safe-area-inset-bottom,0px))}
  .ev-top:has(.ev-ewm) .ev-nav-unten{justify-content:space-around}
  .ev-bg-dunkel .ev-nav-unten{background:rgba(14,16,23,.92);border-top-color:#2a2e3b}
  .ev-bg-dunkel .ev-nav-unten a.on{background:none;color:#fff}
  .ev-top{position:sticky;top:0}
}
@media print{.ev-nav-unten{display:none}}
@media(max-width:700px){.ev-top:has(.ev-nav-unten){-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff}.ev-bg-dunkel .ev-top:has(.ev-nav-unten){background:#0e1017}}

/* ===== Fassung 367: Ladebalken, Logoleiste (Raster/Lauf, Größe, Farbe), Chamäleon, Farb-X ===== */
.ev-lade{position:fixed;left:0;right:0;top:0;height:4px;z-index:2000;pointer-events:none;opacity:0;transition:opacity .2s}
.ev-lade.an{opacity:1}
.ev-lade i{display:block;height:100%;width:30%;border-radius:0 4px 4px 0;background:var(--cham,linear-gradient(90deg,#7a5cff,#00b4d8,#12d8a0,#ffd23f,#ff5db1));background-size:300% 100%;animation:evlade 1.1s ease-in-out infinite,evc 3s linear infinite}
@keyframes evlade{0%{margin-left:-30%}100%{margin-left:100%}}
.ev-lade-txt{position:fixed;right:14px;top:10px;z-index:2000;background:#14161f;color:#fff;border-radius:99px;padding:6px 14px;font-size:.82rem;font-weight:600;opacity:0;transform:translateY(-6px);transition:.2s;pointer-events:none}
.ev-lade.an+.ev-lade-txt{opacity:1;transform:none}
button.ladend,.btn.ladend{position:relative;opacity:.75;cursor:progress}
button.ladend::after,.btn.ladend::after{content:"";display:inline-block;width:12px;height:12px;margin-left:8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-2px;animation:evspin .7s linear infinite}
@keyframes evspin{to{transform:rotate(360deg)}}
.ev-dv-rahmen{position:relative}
.ev-dv-lade{position:absolute;left:0;right:0;top:0;height:4px;z-index:3;overflow:hidden;background:rgba(0,0,0,.06);transition:opacity .25s}
.ev-dv-lade i{display:block;height:100%;width:35%;background:var(--cham);background-size:300% 100%;animation:evlade 1s ease-in-out infinite}
.ev-dv-rahmen.fertig .ev-dv-lade{opacity:0;pointer-events:none}
.ev-dv-rahmen:not(.fertig) iframe{opacity:.55}
@media(prefers-reduced-motion:reduce){.ev-lade i,.ev-dv-lade i{animation:none;width:100%}}
/* Logoleiste: gleichmäßiges Raster, alle Felder gleich groß, letzte Reihe mittig */
.ev-leiste{--lh:44px;--lw:calc(var(--lh) * 3.4);display:block;padding:20px 12px;margin:0 0 6px}
.ev-leiste.lg-s{--lh:28px}.ev-leiste.lg-m{--lh:44px}.ev-leiste.lg-l{--lh:64px}.ev-leiste.lg-xl{--lh:90px}
.ev-leiste .raster-l{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 18px;max-width:1040px;margin:0 auto}
.ev-leiste .lgz{display:flex;align-items:center;justify-content:center;width:var(--lw);height:calc(var(--lh) + 26px);padding:10px 14px;box-sizing:border-box;border:1px solid var(--li);border-radius:16px;background:#fff;transition:transform .2s,box-shadow .2s}
.ev-leiste a.lgz:hover{transform:translateY(-2px);box-shadow:0 12px 24px -16px rgba(0,0,0,.4)}
.ev-leiste .lgz img{height:var(--lh);width:auto;max-width:100%;object-fit:contain}
.ev-leiste .lgz .nm{font-weight:700;font-size:.9rem;text-align:center}
.ev-lgf-sw .ev-leiste .lgz img{filter:grayscale(1) contrast(1.05);opacity:.85;transition:filter .25s,opacity .25s}
.ev-lgf-sw .ev-leiste a.lgz:hover img{filter:none;opacity:1}
@media(max-width:700px){.ev-leiste{--lw:calc(50% - 9px)}.ev-leiste.lg-s{--lw:calc(33.333% - 12px)}.ev-leiste .raster-l{gap:10px 10px}.ev-leiste .lgz{padding:8px 10px}}
/* durchlaufend */
.ev-leiste.lg-lauf .lauf{display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.ev-leiste.lg-lauf .spur{display:flex;flex:none;gap:18px;padding-right:18px;min-width:100%;justify-content:space-around;animation:evlauf 38s linear infinite}
.ev-leiste.lg-lauf .lgz{flex:none;width:var(--lw)}
.ev-leiste.lg-lauf:hover .spur{animation-play-state:paused}
@keyframes evlauf{to{transform:translateX(-100%)}}
@media(max-width:700px){.ev-leiste.lg-lauf .lgz{width:calc(var(--lh) * 3)}}
@media(prefers-reduced-motion:reduce){.ev-leiste.lg-lauf .lauf{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.ev-leiste.lg-lauf .spur{animation:none}.ev-leiste.lg-lauf .spur[aria-hidden]{display:none}}
.ev-bg-dunkel .ev-leiste .lgz{background:#fff}
.ev-leiste.footer{border-top:1px solid var(--li);margin-top:26px;padding-top:24px}
/* Chamäleon: animierter Seiten- und Titel-Hintergrund in den dcyphr.®-Farben */
.ev-bg-cham{background:linear-gradient(115deg,#f1ecff,#e3f6ff 25%,#e3fbf1 48%,#fff7da 68%,#ffe9f3 88%,#f1ecff);background-size:300% 300%;animation:evchamBg 22s ease-in-out infinite}
@keyframes evchamBg{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}
.ev-hb-cham .ev-hero{background-image:linear-gradient(rgba(10,10,25,.30),rgba(10,10,25,.30)),linear-gradient(115deg,#7a5cff,#00b4d8 24%,#12d8a0 46%,#ffd23f 66%,#ff5db1 86%,#7a5cff);background-size:100% 100%,300% 100%;animation:evchamHero 14s linear infinite}
@keyframes evchamHero{to{background-position:0 0,300% 0}}
.ev-bg-cham .ev-hero .art{background:#fff;color:#14161f}
@media(prefers-reduced-motion:reduce){.ev-bg-cham,.ev-hb-cham .ev-hero{animation:none}}
/* Farbwahl: X zum Schließen bzw. Zurücksetzen */
.ev-cx{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin-left:6px;border-radius:50%;border:1px solid var(--li);background:#fff;color:#14161f;font-size:16px;line-height:1;cursor:pointer;padding:0;vertical-align:middle}
.ev-cx[hidden]{display:none}.ev-cx:hover{background:#fee2e2;border-color:#fca5a5}
.ev-cx:focus-visible{outline:3px solid var(--acc);outline-offset:2px}
.ev-farben .ev-cx{align-self:center}
/* Vorschau-Felder der neuen Design-Optionen */
.vs-logo_ani-statisch,.vs-logo_ani-lauf,.vs-logo_gr-s,.vs-logo_gr-m,.vs-logo_gr-l,.vs-logo_gr-xl,.vs-logo_farbe-farbe,.vs-logo_farbe-sw,.vs-bg-cham,.vs-herobg-cham{background-repeat:no-repeat}
.vs-logo_ani-statisch{background:linear-gradient(#cfd3dd,#cfd3dd) 6px 6px/14px 9px no-repeat,linear-gradient(#cfd3dd,#cfd3dd) 24px 6px/14px 9px no-repeat,linear-gradient(#cfd3dd,#cfd3dd) 42px 6px/14px 9px no-repeat,linear-gradient(#cfd3dd,#cfd3dd) 6px 19px/14px 9px no-repeat,linear-gradient(#cfd3dd,#cfd3dd) 24px 19px/14px 9px no-repeat,linear-gradient(#cfd3dd,#cfd3dd) 42px 19px/14px 9px no-repeat,#f4f5f9}
.vs-logo_ani-lauf{background:linear-gradient(90deg,#f4f5f9,transparent 20%,transparent 80%,#f4f5f9),linear-gradient(#cfd3dd,#cfd3dd) 4px 11px/16px 10px no-repeat,linear-gradient(#cfd3dd,#cfd3dd) 24px 11px/16px 10px no-repeat,linear-gradient(#cfd3dd,#cfd3dd) 44px 11px/16px 10px no-repeat,#f4f5f9}
.vs-logo_gr-s{background:linear-gradient(#aab,#aab) 50% 50%/16px 6px no-repeat,#f4f5f9}.vs-logo_gr-m{background:linear-gradient(#aab,#aab) 50% 50%/26px 9px no-repeat,#f4f5f9}
.vs-logo_gr-l{background:linear-gradient(#aab,#aab) 50% 50%/36px 13px no-repeat,#f4f5f9}.vs-logo_gr-xl{background:linear-gradient(#aab,#aab) 50% 50%/48px 18px no-repeat,#f4f5f9}
.vs-logo_farbe-farbe{background:linear-gradient(90deg,#7a5cff,#00b4d8,#12d8a0,#ffd23f,#ff5db1)}.vs-logo_farbe-sw{background:linear-gradient(90deg,#222,#bbb)}
.vs-bg-cham{background:linear-gradient(115deg,#e6dcff,#cfeeff,#d3f7e8,#fff0b8,#ffd6e8)}.vs-herobg-cham{background:linear-gradient(115deg,#7a5cff,#00b4d8,#12d8a0,#ffd23f,#ff5db1)}

/* ---- Fassung 368: Speaker einladen ---- */
.ev-einl{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;font-size:.72rem;font-weight:600;background:#eef0f5;color:#4b5263;vertical-align:middle}
.ev-einl-eingeladen{background:#fff4d6;color:#7a5600}.ev-einl-bestaetigt{background:#dff7ec;color:#0d6b45}.ev-einl-abgelehnt{background:#fde6e9;color:#9b1c33}
.ev-einlbox{margin-top:14px;padding:12px 14px;border:1px dashed rgba(122,92,255,.45);border-radius:12px;background:rgba(122,92,255,.05)}
.ev-einlbox h4{margin:0 0 4px;font-size:.95rem}
.sp-seite{max-width:560px;margin:0 auto;padding:28px 16px 60px}
.sp-kopf{display:flex;gap:14px;align-items:center;margin:0 0 14px}
.sp-kopf img,.sp-kopf .ev-av{width:64px;height:64px;border-radius:50%}
.sp-nutzen{margin:14px 0;padding:0;list-style:none;display:grid;gap:8px}
.sp-nutzen li{padding:10px 12px;border-radius:12px;background:#f6f7fb}
@media(prefers-color-scheme:dark){.sp-nutzen li{background:#171a24}.ev-einl{background:#252a38;color:#c8cddb}}
