/* EventMapp shared shell – Header, Menü, Footer und Grundstil, identisch zu index.html (Dark Premium) */
:root{color-scheme:dark;--bg:#0b141d;--card:#101c27;--primary:#9bb8cb;--primary-dark:#c1d2df;--dark:#e7edf4;--muted:#9aabba;--line:#273746;--soft:#182632;--accent:#32c4cc;--success:#8eae9a;--shadow:0 14px 36px rgba(0,0,0,.22);--blue:#9bb8cb;--red:#e08a8a;--green:#8eae9a;--text:#e7edf4}
*{box-sizing:border-box}html{scroll-behavior:smooth}
html,body{background:#0b141d!important;color:#e7edf4!important}
body{margin:0!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;background:radial-gradient(ellipse at 50% -20%,#182938 0,#0b141d 55%) fixed!important;line-height:1.55}

/* Header + Menü (wie index.html) */
.em-shell{max-width:1540px;margin:0 auto;padding:12px 22px 0}
.em-top{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:44px}
.em-brand{display:flex;align-items:center;gap:9px;font-weight:850;font-size:27px;letter-spacing:-.9px;text-decoration:none;color:#e7edf4}
.em-brand span{color:#55d7dc}
.em-brand-mark{width:32px;height:32px;border-radius:10px;background:#32c4cc;display:grid;place-items:center;font-size:0;box-shadow:0 5px 18px rgba(50,196,204,.18);position:relative;overflow:hidden}
.em-brand-mark:before{content:"";width:15px;height:19px;background:#fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);position:absolute;top:6px;left:8px}
.em-brand-mark:after{content:"✦";position:absolute;color:#32c4cc;font-size:9px;top:8px;left:11px}
.em-actions{display:flex;align-items:center;gap:8px}
.em-actions a{font-size:13px;font-weight:750;text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;border-radius:11px;border:1px solid #2b3c4b;background:#101c27;color:#dce6ef;transition:background .18s,border-color .18s,color .18s,transform .18s}
.em-actions a:hover{background:#1a2a37;border-color:#415768;transform:translateY(-1px)}
.em-actions a.em-primary{background:#32c4cc;color:#071b29;border-color:#32c4cc}
.em-actions a.em-primary:hover{background:#55d7dc;border-color:#55d7dc}
.em-actions a.em-current{background:#243542;border-color:#617687;color:#f0f4f8}
.em-actions a.em-primary.em-current{background:#32c4cc;border-color:#32c4cc;color:#071b29}

/* Footer (wie index.html) */
.site-footer{max-width:1540px;margin:36px auto 8px;padding:22px 26px 14px;border-top:1px solid #273746;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;color:#93a4b4;font-size:12px}
.site-footer .footer-brand{font-weight:800;color:#e7edf4}
.site-footer nav{display:flex;gap:16px;flex-wrap:wrap}
.site-footer a{color:#bacbd8;text-decoration:none;font-weight:650}
.site-footer a:hover{color:#9bb8cb;text-decoration:underline}
.footer-note{font-size:11px;color:#94a3b8}

/* Grundstil der Inhalte */
body>main,main{max-width:1120px;margin-left:auto!important;margin-right:auto!important}
h1,h2,h3{color:#e7edf4;letter-spacing:-.035em;line-height:1.2}
a{color:#c3d3df}
.card,.box,.panel,article,.tabs,.socialbox{background:#101c27!important;color:#e7edf4!important;border:1px solid #273746!important;box-shadow:0 14px 36px rgba(0,0,0,.2)!important}
p,li,.muted,.meta,label,small{color:#9aabba}
h1+p,.card p,article p,article li{color:#b4c2cf}
label{font-weight:750;color:#c6d2dd}
input,select,textarea{background:#0e1a25!important;color:#e7edf4!important;border:1px solid #2a3b4b!important;border-radius:11px}
input::placeholder,textarea::placeholder{color:#8293a3!important}
input:focus,select:focus,textarea:focus{border-color:#617687!important;box-shadow:0 0 0 4px rgba(155,184,203,.12)!important;outline:none}
button,.btn,[type=submit]{border-radius:11px!important;font-weight:750;cursor:pointer;transition:background .18s,border-color .18s,color .18s,transform .18s}
button:hover,.btn:hover,[type=submit]:hover{transform:translateY(-1px)}
button:focus-visible,a:focus-visible{outline:3px solid #617687;outline-offset:3px}
.btn,button.btn,a.btn{background:#32c4cc;color:#071b29!important;border:1px solid #32c4cc}
.btn.secondary,.btn.ghost,a.btn.secondary,button.secondary{background:#101c27!important;color:#dce6ef!important;border:1px solid #2b3c4b!important}
.btn.secondary:hover,button.secondary:hover{background:#1a2a37!important;border-color:#415768!important}
.submit,button[type=submit]{background:#32c4cc;color:#071b29;border:1px solid #32c4cc}
.back{color:#9aabba!important}
hr{border:0;border-top:1px solid #273746}
table{color:#dce6ef}th,td{border-color:#273746!important}
.notice{background:#172938!important;border:1px solid #354c5e!important;color:#c6d2dd!important}

@media(max-width:900px){
 .em-shell{padding:12px 14px 0}
 .em-brand{font-size:22px}.em-brand-mark{width:28px;height:28px;border-radius:9px}
 .em-top{align-items:flex-start;flex-direction:column;gap:10px}
 .em-actions{flex-wrap:wrap;gap:6px}.em-actions a{font-size:12px;padding:8px 10px}
 .site-footer{display:block;text-align:center;margin:18px 0 20px;padding:18px 14px}.site-footer nav{justify-content:center;margin-top:10px;gap:12px}
 body>main,main{padding-left:14px!important;padding-right:14px!important}
}

/* Seiten-spezifische Korrekturen */
body{display:block!important;min-height:100vh;padding:0!important}
body>main{padding:26px 22px 20px}
main.box{max-width:430px;margin:26px auto 0!important;padding:26px!important;border-radius:22px}
.contact{background:#172938!important;border:1px solid #354c5e!important;color:#dce6ef!important}
.contact *{color:inherit}
a.btn,button.btn,.btn{background:#32c4cc!important;color:#071b29!important;border:1px solid #32c4cc!important}
a.btn.secondary,.btn.secondary,.btn.ghost,button#logout,.top .btn:not(.primary){background:#101c27!important;color:#dce6ef!important;border:1px solid #2b3c4b!important}
.badge,.pill,.status{color:#dce6ef}
.em-shell,.site-footer{width:100%}

/* Mobile App-Modus für Unterseiten: Navigation läuft über die Tabbar */
@media(max-width:900px){
 .em-shell{position:sticky;top:0;z-index:200;padding:calc(10px + env(safe-area-inset-top,0px)) 16px 10px;background:rgba(11,20,29,.88);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid #1f2e3b}
 .em-top{flex-direction:row;align-items:center;min-height:36px}
 .em-actions{display:none}
 .em-brand{font-size:21px}.em-brand-mark{width:28px;height:28px}
 body>main,main{padding-top:18px!important}
 main.box{margin:14px auto 0!important}
 .site-footer{margin:10px 0 0;padding-bottom:22px}
 h1{font-size:26px}
 .btn,button.btn,a.btn,button[type=submit]{min-height:44px}
 input,select,textarea{min-height:46px}
}
@media(max-width:900px){body{padding-bottom:calc(var(--tabbar-h,62px) + env(safe-area-inset-bottom,0px))!important}}
/* EventMappp turquoise identity shared across every frontend page */
:root{--bg:#071326;--card:#101d2b;--primary:#32c4cc;--primary-dark:#55d7dc;--dark:#edf6fb;--muted:#9bb0c0;--line:#203247;--soft:#132438;--accent:#32c4cc;--text:#edf6fb;--blue:#32c4cc;--success:#59c8a5;--red:#f08a91;--green:#59c8a5;--shadow:0 14px 36px rgba(0,0,0,.24);color-scheme:dark}
html,body{background-color:#071326!important;color:#edf6fb!important}body{background-image:radial-gradient(ellipse at 50% -20%,#11283b 0,#071326 58%)!important}
a{color:#67dce0}h1,h2,h3{color:#edf6fb!important}
.card,.box,.panel,article,.tabs,.socialbox,.filterbox,.drawer,.map-preview{background:#101d2b!important;color:#edf6fb!important;border-color:#203247!important}
p,li,.muted,.meta,label,small,.hero p{color:#9bb0c0}h1+p,.card p,article p,article li{color:#c0d0dc}
input,select,textarea{background:#0b1929!important;color:#edf6fb!important;border-color:#294159!important}input:focus,select:focus,textarea:focus{border-color:#32c4cc!important;box-shadow:0 0 0 3px rgba(50,196,204,.17)!important}
button,.btn,[type=submit],.add-event,.search button#search,.submit,.privacy-actions .accept,.app-tabbar .tab-add .plus,.mobile-filter-sheet .filter-confirm{background:#32c4cc!important;color:#071b29!important;border-color:#32c4cc!important}
button.secondary,.btn.secondary,.btn.ghost,a.btn.secondary,.login-link,.period,.pill,.toolbar button,.mapreset,.actions a,.actions button,.close,.clear-search{background:#101d2b!important;color:#d8e8f0!important;border-color:#294159!important}
.period.active,.pill.active,.tabs button.active,.card.selected,.quick-chips button.on{background:#173b4d!important;color:#77e4e7!important;border-color:#32c4cc!important}
.brand span,.em-brand span,.cat,.back,.social-friends a,.site-footer a:hover{color:#32c4cc!important}
.em-actions a.em-primary,.btn,.submit,.app-tabbar .tab-add .plus{background:#32c4cc!important;color:#071b29!important;border-color:#32c4cc!important}
.em-actions a.em-current,.app-tabbar .on{color:#77e4e7!important}.app-tabbar,.mobile-bottom-nav{background:rgba(7,19,38,.96)!important;border-color:#203247!important}.app-tabbar .on:before{background:#32c4cc!important}
#map{background:#102235!important}.leaflet-tile-pane{filter:none!important}.leaflet-container{background:#102235!important}.leaflet-control-zoom a,.leaflet-bar a{background:#101d2b!important;color:#edf6fb!important;border-color:#294159!important}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#101d2b!important;color:#edf6fb!important}.leaflet-popup-content{color:#edf6fb!important}
.eventmap-pin{--pin-accent:#32c4cc}.mapsearch,.mobile-filter-btn.has-filter{background:#32c4cc!important;color:#071b29!important}.site-footer{border-color:#203247!important;color:#9bb0c0!important}
.brand-image{display:block!important;width:210px;max-width:min(58vw,240px);height:auto;object-fit:contain;flex:0 0 auto}.brand,.em-brand{display:inline-flex;align-items:center;gap:0;line-height:0}.em-brand{padding:0!important;background:transparent!important;box-shadow:none!important}
.app{max-width:1540px!important;width:100%!important}.layout{min-width:0}.map-panel,.list-panel{min-width:0}.map-panel .mapwrap{min-width:0}#map{display:block!important;width:100%!important;min-width:0!important}
@media(max-width:900px){.brand-image{width:190px;max-width:64vw}.app{width:100%!important}.map-panel{min-height:0!important}}
/* Robust inline wordmark and visible map tiles */
.brand-logo-icon{display:block;width:44px;height:44px;flex:0 0 44px;object-fit:contain}.brand-word{display:inline-block;color:#edf6fb!important;font-size:27px;font-weight:850;letter-spacing:-.9px;line-height:1.15;white-space:nowrap}.brand-word span{color:#32c4cc!important}.brand,.em-brand{display:flex!important;align-items:center;gap:10px;line-height:1.15;visibility:visible}.brand{background:transparent!important;box-shadow:none!important;padding:0!important}.em-brand{font-size:inherit!important}
.leaflet-tile-pane,.leaflet-tile{filter:none!important;opacity:1!important}
@media(min-width:901px){.app>.top{display:flex!important;visibility:visible!important;min-height:54px}.layout{display:grid!important;grid-template-columns:minmax(0,1fr) 330px!important;width:100%;align-items:stretch}.layout>.map-panel,.layout>.list-panel{height:calc(100vh - 195px)!important;min-height:420px!important}.map-panel{display:flex!important;flex-direction:column;min-height:420px}.map-panel .mapwrap{position:relative!important;flex:1 1 auto;min-height:0;height:auto!important}.map-panel #map{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;min-height:0!important}.list-panel .list{height:calc(100% - 64px)!important;min-height:0!important}}
@media(max-width:900px){.brand-logo-icon{width:34px;height:34px;flex-basis:34px}.brand-word{font-size:22px}.brand,.em-brand{gap:8px}}
@media(min-width:901px){.layout{height:calc(100vh - 195px)!important}.site-footer{margin-top:20px!important}}
.brandline{display:flex;align-items:center;gap:18px;min-width:0}.brandline .brand{text-decoration:none;flex:0 0 auto}.brandline h1{margin:0;font-size:22px;line-height:1.2;letter-spacing:-.35px;font-weight:800;white-space:nowrap}
@media(max-width:1200px) and (min-width:901px){.brandline{gap:10px}.brandline h1{font-size:18px}.top-actions{gap:6px}.top-actions a{font-size:11px;padding-left:9px;padding-right:9px}}
@media(max-width:900px){.brandline h1{display:none}}
/* Keep the EventMapp pin visible in compact map mode and use a readable dark OSM basemap. */
.leaflet-tile-pane{filter:brightness(.6) invert(1) contrast(3) hue-rotate(200deg) saturate(.3) brightness(.7)!important}.leaflet-tile{opacity:1!important;visibility:visible!important}
@media(max-width:900px){.app>.top{display:flex!important;position:fixed!important;top:calc(8px + env(safe-area-inset-top,0px))!important;left:10px!important;right:10px!important;z-index:920!important;min-height:40px!important}.app>.top>.top-actions{display:none!important}.app>.top>div:first-child{display:block!important}.app .brand{display:flex!important;visibility:visible!important;background:rgba(7,19,38,.9)!important;padding:4px 9px!important;border:1px solid #203247;border-radius:12px;backdrop-filter:blur(12px)}}

/* Mobile navigation and search/filter spacing */
@media(max-width:900px){
 :root{--tabbar-h:72px}
 .app-tabbar{left:12px!important;right:12px!important;bottom:calc(8px + var(--safe-b,0px))!important;height:58px!important;padding:5px!important;gap:4px!important;border:1px solid rgba(148,163,184,.2)!important;border-radius:21px!important;background:rgba(7,19,38,.94)!important;box-shadow:0 12px 34px rgba(0,0,0,.34)!important}
 .app-tabbar a,.app-tabbar button{background:transparent!important;border:0!important;color:#9bb0c0!important;border-radius:15px!important;gap:3px!important;font-size:10px!important}
 .app-tabbar .on{background:rgba(50,196,204,.13)!important;color:#77e4e7!important}
 .app-tabbar .on:before{display:none!important}
 .app-tabbar .tab-add .plus{width:38px!important;height:38px!important;margin:0!important;border-radius:13px!important;background:#32c4cc!important;color:#071b29!important;box-shadow:0 5px 14px rgba(50,196,204,.22)!important}
 .app-tabbar .tab-add .plus svg{width:20px!important;height:20px!important;stroke:#071b29!important}
 .app-tabbar .tab-add span.lbl{margin:0!important}
 .app-tabbar a:focus-visible,.app-tabbar button:focus-visible{outline:2px solid #77e4e7;outline-offset:2px}
}
/* ===== Mobile: Filter, Suche und Standort als schwebende Symbol-Buttons unten rechts ===== */
.search-fab{display:none}
@media(max-width:900px){
 :root{--fab:52px;--fab-gap:12px;--fab-edge:14px;--fab-base:calc(var(--tb,calc(72px + env(safe-area-inset-bottom,0px))) + 14px)}
 .quick-chips{display:none!important}

 /* gemeinsame Optik */
 html body .mobile-filter-btn,html body .search-fab,html body #locateBtn{
  display:grid!important;place-items:center;position:relative;width:var(--fab)!important;height:var(--fab)!important;min-width:0;padding:0!important;margin:0;
  border-radius:50%!important;border:1px solid #294159!important;background:rgba(16,29,43,.94)!important;color:#d8e8f0!important;
  -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 10px 26px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.04)!important;
  cursor:pointer;transition:transform .18s ease,opacity .2s ease,border-color .2s,color .2s,box-shadow .2s}
 html body .mobile-filter-btn:hover,html body .search-fab:hover,html body #locateBtn:hover{transform:none}
 html body .mobile-filter-btn:active,html body .search-fab:active,html body #locateBtn:active{transform:scale(.92)}
 html body .mobile-filter-btn svg,html body .search-fab svg,html body #locateBtn svg{width:23px;height:23px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
 /* aktiv: türkiser Rand + Symbol */
 html body .mobile-filter-btn.has-filter,html body .search-fab.has-filter{color:#55d7dc!important;border-color:#32c4cc!important;background:rgba(16,29,43,.94)!important;box-shadow:0 10px 26px rgba(0,0,0,.42),0 0 0 3px rgba(50,196,204,.16)!important}
 /* Zähler / Punkt */
 html body .mobile-filter-btn svg{width:24px;height:24px;stroke-width:2.2}
 html body .mobile-filter-btn .badge{position:absolute;top:-3px;right:-3px;margin:0;min-width:20px;height:20px;padding:0 5px;border-radius:999px;display:grid;place-items:center;background:#32c4cc!important;color:#071b29!important;border:2px solid #071326;font-size:11px;font-weight:800;line-height:1}
 html body .mobile-filter-btn .badge[hidden]{display:none}
 .search-fab .dot{position:absolute;top:3px;right:3px;width:12px;height:12px;border-radius:50%;background:#32c4cc;border:2px solid #071326;display:none}
 .search-fab.has-filter .dot{display:block}

 /* Filter unten rechts (darüber Standort), Suche oben rechts */
 html body .mobile-map-overlay{display:block!important;position:fixed!important;top:auto!important;left:auto!important;right:var(--fab-edge)!important;bottom:var(--fab-base)!important;width:var(--fab)!important;z-index:911;pointer-events:none}
 html body .mobile-map-overlay .mobile-filter-btn{pointer-events:auto}
 html body .search-fab{position:fixed!important;right:var(--fab-edge);top:calc(10px + env(safe-area-inset-top,0px));bottom:auto;z-index:930}
 html body #locateBtn{position:absolute!important;right:var(--fab-edge)!important;bottom:calc(14px + var(--fab) + var(--fab-gap))!important}
 /* bei geöffneter Event-Vorschau und in der Konto-Ansicht ausblenden */
 body:has(.map-preview.show) .mobile-map-overlay,body:has(.map-preview.show) .search-fab,body:has(.map-preview.show) #locateBtn{opacity:0;transform:scale(.8);pointer-events:none!important}
 body.view-user .search-fab,body.view-user .mobile-map-overlay{display:none!important}
 body.view-list #locateBtn{display:none!important}

 /* Suchleiste: erscheint beim Antippen der Lupe oben */
 html body .app .search{display:none!important;position:fixed;top:calc(10px + env(safe-area-inset-top,0px))!important;left:10px!important;right:10px!important;bottom:auto;z-index:1200}
 html body .app .search.open{display:flex!important;animation:searchDrop .22s cubic-bezier(.2,.8,.2,1)}
 @keyframes searchDrop{from{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:none}}
 html body .app .search .searchbox{flex:1;width:100%}
 html body .app .searchbox input{height:52px;border-radius:26px!important;background:#101d2b!important;border:1px solid #32c4cc!important;box-shadow:0 14px 34px rgba(0,0,0,.5),0 0 0 3px rgba(50,196,204,.14)!important;padding-left:46px;padding-right:46px}
 html body .app .searchbox .icon{left:18px;z-index:2;display:grid;place-items:center;color:#55d7dc!important}
 html body .app .searchbox .clear-search{z-index:2}

 /* Karten-Hinweise rücken nach oben, da keine Chip-Reihe mehr existiert */
 html body .app .mapsearch{top:calc(14px + env(safe-area-inset-top,0px))!important}
 html body .app .mapreset{top:calc(66px + env(safe-area-inset-top,0px))!important}
 body.view-list .list-panel{padding-top:calc(74px + env(safe-area-inset-top,0px))!important}
 body.view-list .list{padding-bottom:calc(var(--fab-base) + var(--fab) + 8px)!important}

 /* Filter-Menü als Bottom-Sheet mit Abschnitten */
 html body .mobile-filter-sheet{top:auto!important;max-height:84dvh!important;padding-top:18px!important}
 .mobile-filter-sheet h3{margin-bottom:14px}
 .mobile-filter-content .periodbar:before,.mobile-filter-content .pills:before{display:block;flex:0 0 100%;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#9bb0c0;margin:2px 0 2px}
 .mobile-filter-content .periodbar:before{content:"Zeitraum"}
 .mobile-filter-content .pills:before{content:"Kategorie";margin-top:12px}
 .mobile-filter-content .periodbar,.mobile-filter-content .pills{display:flex;flex-wrap:wrap!important;gap:8px!important;overflow:visible!important;padding:0!important}
 .mobile-filter-content .pills .pill,.mobile-filter-content .period{padding:9px 14px!important;font-size:13px!important;border-radius:999px!important}
 .mobile-filter-content .period.active,.mobile-filter-content .pill.active{background:#173b4d!important;color:#77e4e7!important;border-color:#32c4cc!important}
}
@media(min-width:901px){.search-fab{display:none!important}}

/* ===== Umschalter (Einloggen / Konto erstellen, Besucher / Veranstalter): aktiv klar erkennbar, inaktiv unauffällig ===== */
.tabs{display:flex;gap:4px;padding:4px;background:#0a1626!important;border:1px solid #1d3045!important;border-radius:15px;box-shadow:none!important}
#roleChoice{margin-top:-6px}
.tabs button{flex:1;min-width:0;background:transparent!important;color:#8195a6!important;border:1px solid transparent!important;border-radius:11px!important;padding:11px 8px;font-weight:700;box-shadow:none!important;transition:background .2s,color .2s,border-color .2s}
.tabs button:hover{background:rgba(255,255,255,.04)!important;color:#d8e8f0!important;transform:none}
.tabs button.active{background:rgba(50,196,204,.16)!important;color:#77e4e7!important;border-color:rgba(50,196,204,.55)!important}
.tabs button.active:hover{background:rgba(50,196,204,.2)!important;color:#77e4e7!important}

/* Browser-Autofill (vorausgefüllte E-Mail/Passwort) im Design statt beige/gelb */
input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,select:-webkit-autofill{
 -webkit-text-fill-color:#edf6fb!important;caret-color:#edf6fb;
 -webkit-box-shadow:0 0 0 1000px #0b1929 inset!important;box-shadow:0 0 0 1000px #0b1929 inset!important;
 border-color:#294159!important;transition:background-color 9999s ease-out 0s}
input:autofill{background-color:#0b1929!important;color:#edf6fb!important}

/* Mobil: Logo bleibt oben links, wird aber beim Öffnen der Suche komplett ausgeblendet */
@media(max-width:900px){
 html body .app>.top{transition:opacity .15s ease}
 html body.search-open .app>.top{opacity:0!important;pointer-events:none!important}
}

/* ===== Tab-Leiste mobil: aktiver Tab als türkiser Chip (wie bisher „Neu“), „Neu“ selbst schlicht ===== */
@media(max-width:900px){
 html body .app-tabbar .on{background:transparent!important;color:#77e4e7!important}
 html body .app-tabbar .on svg,html body .app-tabbar .tab-add.on .plus svg{box-sizing:content-box;width:20px!important;height:20px!important;padding:5px 13px;border-radius:12px;background:#32c4cc;stroke:#071b29!important;stroke-width:2!important;box-shadow:0 5px 14px rgba(50,196,204,.24)}
 /* „Neu“: nur ein schlichtes Plus */
 html body .app-tabbar .tab-add .plus{width:auto!important;height:auto!important;margin:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;display:grid;place-items:center}
 html body .app-tabbar .tab-add:not(.on) .plus svg{width:23px!important;height:23px!important;stroke:#55d7dc!important;stroke-width:1.8!important;background:none;padding:0;box-shadow:none}
 html body .app-tabbar .tab-add{color:#9bb0c0!important}
 html body .app-tabbar .tab-add.on{color:#77e4e7!important}
}

/* ===== Mobil: Tab-Leiste nur mit Symbolen; Liste deckt die Karte vollständig ab ===== */
@media(max-width:900px){
 html body .app-tabbar a>span:not(.plus),html body .app-tabbar button>span{display:none!important}
 html body .app-tabbar .tab-add .plus+span{display:none!important}
 html body .app-tabbar{height:56px!important;align-items:center}
 html body .app-tabbar a,html body .app-tabbar button{justify-content:center;height:100%}
 html body .app-tabbar svg{width:25px;height:25px}
 html body .app-tabbar .on svg,html body .app-tabbar .tab-add.on .plus svg{width:22px!important;height:22px!important;padding:7px 18px}
 html body .app-tabbar .tab-add:not(.on) .plus svg{width:26px!important;height:26px!important}
 html body.view-list .list-panel{margin:0!important;top:0!important}
}

/* ===== Event-Details: dezente Aktionen ===== */
html body .drawer .act-tiles{display:grid!important;grid-auto-flow:column;grid-auto-columns:1fr;gap:8px;margin-top:20px;flex-wrap:nowrap}
html body .drawer .act-tiles .act-tile{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:64px;padding:11px 6px;margin:0;border-radius:15px!important;background:#0d1a29!important;border:1px solid #1b2e42!important;color:#9db2c2!important;font-size:12px;font-weight:600;letter-spacing:.01em;text-decoration:none;box-shadow:none!important;cursor:pointer;transition:color .18s,border-color .18s,background .18s}
html body .drawer .act-tiles .act-tile i{display:block;width:21px;height:21px;font-style:normal}
html body .drawer .act-tiles .act-tile svg{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
html body .drawer .act-tiles .act-tile:hover,html body .drawer .act-tiles .act-tile:active{background:#11233a!important;border-color:rgba(50,196,204,.45)!important;color:#77e4e7!important;transform:none}
html body .drawer .act-orig{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:10px;padding:11px 12px;border-radius:13px;font-size:14px;font-weight:600;color:#55d7dc;text-decoration:none;transition:background .18s}
html body .drawer .act-orig:hover{background:rgba(50,196,204,.09)}
@media(min-width:901px){html body .drawer .act-tiles .calendar-action{display:none!important}}
html body .drawer .desc-more{display:inline-flex;align-items:center;gap:6px;margin:-4px 0 14px;padding:4px 0;border:0;background:none!important;color:#7f97aa!important;font-size:13px;font-weight:600;box-shadow:none!important}
html body .drawer .desc-more:after{content:"";width:6px;height:6px;border-right:1.7px solid currentColor;border-bottom:1.7px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s}
html body .drawer .desc-more.open:after{transform:rotate(-135deg) translateY(-1px)}
html body .drawer .desc-more:hover{color:#55d7dc!important;transform:none}

/* ===== Nur Veranstalter sehen „Veranstaltung hinzufügen“ (＋) ===== */
.org-only{display:none!important}
body.is-organizer .em-actions .org-only,body.is-organizer .top-actions .org-only{display:inline-flex!important}
@media(max-width:900px){body.is-organizer .app-tabbar .tab-add.org-only{display:flex!important}}

/* Tab „＋“ (Neue Veranstaltung): immer ausgeblendet, außer für Veranstalter – unabhängig vom Skript-Stand */
@media(max-width:900px){
 html body .app-tabbar .tab-add{display:none!important}
 html body.is-organizer .app-tabbar .tab-add{display:flex!important}
}

/* ===== Demo-Hinweis ===== */
.demo-chip{display:inline-flex;align-items:center;flex:0 0 auto;margin-left:10px;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.06em;color:#77e4e7;background:rgba(50,196,204,.12);border:1px solid rgba(50,196,204,.45);white-space:nowrap;line-height:1.2}
@media(max-width:900px){.app .brandline{display:flex;align-items:center}.app>.top{right:76px!important}.demo-chip{margin-left:8px;padding:4px 9px;font-size:10px}}

/* Kopfzeile Veranstalter-Seiten: Abmelden + Demo-Chip */
.em-actions .em-logout{font:inherit;font-size:13px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;border-radius:11px;border:1px solid #2b3c4b;background:transparent;color:#9bb0c0;cursor:pointer;white-space:nowrap;transition:background .18s,border-color .18s,color .18s}
.em-actions .em-logout:hover{background:#15283a;color:#edf6fb;border-color:#415768}
.app>.top.em-top-empty,.app>.top:not(:has(*)){display:none!important}
.app>.top #dash{display:none!important}
.em-brand .demo-chip{margin-left:6px;font-size:10px;padding:4px 9px;letter-spacing:.07em;align-self:center}
@media(max-width:900px){.em-actions .em-logout{font-size:12px;padding:8px 10px}}

/* Web: "+ Veranstaltung hinzufügen" entfällt (Anlegen läuft über das Veranstalter-Dashboard) */
@media(min-width:901px){
 html body .em-actions a.em-primary.org-only,html body.is-organizer .em-actions a.em-primary.org-only,html body .top-actions a.add-event,html body.is-organizer .top-actions a.add-event.org-only{display:none!important}
}
/* Mobil: Abmelden am Seitenende der Veranstalter-Seiten */
.em-logout-m{display:none}
@media(max-width:900px){.em-logout-m{display:flex;align-items:center;justify-content:center;width:100%;margin:24px 0 110px;padding:14px;border-radius:16px;border:1px solid rgba(240,138,145,.35);background:rgba(240,138,145,.08);color:#f08a91;font:inherit;font-size:15px;font-weight:800;cursor:pointer}.em-logout-m:active{background:rgba(240,138,145,.16)}}
/* Abmelden-Buttons: dezent, unabhängig von globalen Button-Regeln */
html body .em-actions button.em-logout{background:#101c27!important;color:#dce6ef!important;border:1px solid #2b3c4b!important;box-shadow:none!important}
html body .em-actions button.em-logout:hover{background:#1a2a37!important;border-color:#415768!important;color:#fff!important}
@media(max-width:900px){html body button.em-logout-m{background:rgba(240,138,145,.08)!important;color:#f08a91!important;border:1px solid rgba(240,138,145,.35)!important;box-shadow:none!important}}
