/* =========================
   DASHBOARD – scoped (Dark Glass)
   fits app.css (dark default)
========================= */

/* Dashboard: weniger vertikaler Abstand Container + Topbar „Nächstes Event“ zentriert */
.dashPage .container.section.appContent__inner{
  padding-top: 36px;
  padding-bottom: 22px;
}

.dashPage .panel.dashHero__panel{
  padding-bottom: 10px;
}

.dashPage .appTopbar--dashNextCenter{
  position: relative;
  justify-content: flex-start;
}
.dashPage .appTopbar--dashNextCenter .appTopbar__center{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  max-width: min(560px, 48vw);
  width: max-content;
  min-width: 0;
  padding: 0 10px;
  text-align: center;
  pointer-events: auto;
  z-index: 2;
}
.dashPage .appTopbar--dashNextCenter .appTopbar__center .appTopbar__meta{
  justify-content: center;
  text-align: center;
}
.dashPage .appTopbar--dashNextCenter .appTopbar__center #hdrNextEventName{
  display: inline;
  max-width: 36ch;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  vertical-align: bottom;
}
@media (max-width: 720px){
  .dashPage .appTopbar--dashNextCenter{
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
  }
  .dashPage .appTopbar--dashNextCenter .appTopbar__left{
    order: 1;
  }
  .dashPage .appTopbar--dashNextCenter .appTopbar__center{
    position: static;
    transform: none;
    max-width: 100%;
    width: 100%;
    padding: 0;
    order: 2;
    text-align: center;
  }
}

.dashPage{
  --dashAccent: var(--brand-primary);
  --dashSoft: rgba(255,30,45,.12);

  --dashLine: rgba(255,255,255,.12);
  --dashLineStrong: rgba(255,255,255,.16);

  --dashCard: rgba(255,255,255,.04);
  --dashCard2: rgba(255,255,255,.06);
  --dashCardHover: rgba(255,255,255,.06);

  --dashText: var(--ui-text);
  --dashMuted: var(--ui-text-muted);

  --dashShadow: 0 18px 60px rgba(0,0,0,.45);
  --dashShadowSoft: 0 12px 40px rgba(0,0,0,.35);

  --dashBlur: blur(14px);
}

/* Headline/Copy */
.dashH1{
  margin: 10px 0 8px;
  line-height: 1.08;
  letter-spacing: -0.02em;
  font-size: clamp(26px, 3.0vw, 40px);
  color: var(--dashText);
  text-shadow: 0 14px 40px rgba(0,0,0,.55);
}
.dashLead{
  margin: 0;
  max-width: 80ch;
  color: var(--dashMuted);
  line-height: 1.5;
  font-size: 15.5px;
}

/* HERO: ein Panel, oben Identität + Schnellaktionen, darunter Join */
.dashHero__panel{
  padding: 18px;
  border-radius: 22px;
  box-shadow: var(--dashShadow);
  position: relative;
  overflow: hidden;

  display: flex;
  flex-direction: column;
  gap: 14px;

  background: var(--dashCard);
  border: 1px solid var(--dashLine);
  backdrop-filter: var(--dashBlur);
  -webkit-backdrop-filter: var(--dashBlur);
}
.dashHero__panel:before{
  content:"";
  position:absolute; inset:-2px;
  background:
    radial-gradient(900px 420px at 20% 0%, rgba(255,30,45,.18), transparent 60%),
    radial-gradient(700px 380px at 100% 20%, rgba(96,165,250,.10), transparent 55%),
    radial-gradient(900px 420px at 70% 110%, rgba(52,211,153,.08), transparent 62%);
  pointer-events:none;
}
.dashHero__panel > *{ position:relative; }

.dashHero__mainRow{
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
  gap: 20px;
  align-items: start;
}
@media (max-width: 920px){
  .dashHero__mainRow{ grid-template-columns: 1fr; }
}

.dashHero__identity{
  min-width: 0;
}

/* Profil-Felder unterhalb der Kopfzeile (volle Breite) – verhindert Leerraum rechts neben Schnellaktionen */
.dashHero__metaBlock{
  padding-top: 12px;
  border-top: 1px solid rgba(255,255,255,.08);
}
.dashHero__metaBlock .dashMetaGrid{
  margin-top: 0;
}

.dashHero__statsRow{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.dashHero__statPill{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--dashMuted);
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
}
.dashHero__statPill strong{
  color: var(--dashText);
  font-weight: 900;
  font-size: 14px;
}

.dashQuickActions{
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 18px;
  padding: 14px 14px 16px;
  background: rgba(0,0,0,.18);
  box-shadow: var(--dashShadowSoft);
}
.dashQuickActions__head{
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--dashMuted);
  margin-bottom: 12px;
}
.dashQuickActions__btns{
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.dashQuickActions__btn{
  width: 100%;
  justify-content: center;
  border-radius: 12px !important;
}

.dashHero__join{
  padding-top: 4px;
  border-top: 1px solid rgba(255,255,255,.08);
}
.dashHero__joinHead{
  margin-bottom: 10px;
}
.dashHero__joinTitle{
  display: block;
  font-weight: 950;
  font-size: 14px;
  color: var(--dashText);
  margin-bottom: 4px;
}
.dashHero__joinLead{
  margin: 0;
  font-size: 13px;
  line-height: 1.4;
}
.dashHero__join .dashJoinBox{
  flex: 1 1 auto;
  max-width: 100%;
}

/* Badge */
.dashBadge{
  display:inline-flex;
  align-items:center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  border: 1px solid var(--dashLine);
  background: rgba(255,255,255,.05);
  color: var(--dashMuted);
  font-size: 13px;
  margin-bottom: 10px;

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.dashBadge:before{
  content:"";
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--dashAccent);
  box-shadow: 0 0 0 6px rgba(255,30,45,.18);
  display:inline-block;
}

/* Profile row */
.dashProfileRow{
  display:flex;
  gap: 14px;
  align-items: center;
  margin-top: 6px;
}

.dashAvatar{
  width: 64px;
  height: 64px;
  border-radius: 18px;
  border: 1px solid var(--dashLine);
  background: rgba(255,255,255,.04);
  overflow: hidden;
  flex: 0 0 auto;

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: var(--dashShadowSoft);
}
.dashAvatar img{
  width:100%;
  height:100%;
  object-fit: cover;
  display:block;
  filter: saturate(1.05) contrast(1.05);
}

/* Meta grid */
.dashMetaGrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 10px;
  margin-top: 12px;
}
@media (max-width: 620px){
  .dashMetaGrid{ grid-template-columns: 1fr; }
}

.dashMetaCard{
  position: relative;
  border: 1px solid var(--dashLine);
  border-radius: 18px;
  background: var(--dashCard2);
  padding: 12px;

  backdrop-filter: var(--dashBlur);
  -webkit-backdrop-filter: var(--dashBlur);
  box-shadow: var(--dashShadowSoft);
}
.dashMetaT{
  font-weight: 950;
  margin-bottom: 4px;
  color: var(--dashText);
}
.dashMetaD{
  color: var(--dashMuted);
  font-size: 13.5px;
  line-height: 1.35;
}

/* Right side card */
.dashRight{
  display:flex;
  flex-direction: column;
  gap: 10px;
  height: 100%;
}

.dashCard{
  border: 1px solid var(--dashLine);
  border-radius: 22px;
  background: var(--dashCard);
  overflow: hidden;
  height: 100%;
  min-height: 0;
  display:flex;
  flex-direction: column;

  backdrop-filter: var(--dashBlur);
  -webkit-backdrop-filter: var(--dashBlur);
  box-shadow: var(--dashShadow);
}

.dashCard__head{
  padding: 12px 14px;
  border-bottom: 1px solid rgba(255,255,255,.10);
  background: rgba(255,255,255,.03);
  font-weight: 950;
  color: var(--dashText);
}

.dashCard__body{
  padding: 12px 14px;
  color: var(--dashMuted);
  font-size: 14px;
  line-height: 1.45;
  display:flex;
  flex-direction: column;
  gap: 10px;
  justify-content: space-between;
  flex: 1;
}

.dashStatRow{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.dashStat{
  border: 1px solid rgba(255,255,255,.12);
  background: rgba(255,255,255,.04);
  border-radius: 18px;
  padding: 12px;

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.dashStat .k{
  font-size: 12px;
  font-weight: 900;
  color: var(--dashMuted);
  letter-spacing: .06em;
  text-transform: uppercase;
}
.dashStat .v{
  font-size: 22px;
  font-weight: 1000;
  color: var(--dashText);
  margin-top: 2px;
}

/* Sticky Subnav (Tabs) */
.dashSubnav{
  position: sticky;
  top: 92px;
  z-index: 9999; /* keep clickable above glass layers */
  margin-top: 4px;

  border: 1px solid var(--dashLine);
  border-radius: 999px;
  background: rgba(10,14,20,.55);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);

  overflow-x: auto;
  box-shadow: 0 14px 44px rgba(0,0,0,.35);
  text-align: center;

  pointer-events: auto;
}

.dashNavTiles{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}
.dashNavTile{
  display:flex;
  align-items:center;
  gap:8px;
  justify-content:flex-start;
  text-decoration:none;
  color:var(--dashText);
  border:1px solid var(--dashLine);
  border-radius:12px;
  padding:10px 12px;
  background:var(--dashCard);
}
.dashNavTile:hover{
  border-color:var(--dashLineStrong);
  background:var(--dashCardHover);
}
.dashNavTile__icon{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  width:22px;
  line-height:1;
  color:rgba(255,255,255,.82);
}
.dashNavTile__icon svg{
  display:block;
  width:18px;
  height:18px;
}
.dashCatalogStrip__icon{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  flex-shrink:0;
  width:22px;
  color:rgba(255,255,255,.82);
}
.dashCatalogStrip__icon svg{
  display:block;
  width:18px;
  height:18px;
}
.dashNavTile__text{ font-weight:800; font-size:13px; white-space:nowrap; }
.dashNavTile__meta{
  margin-left:auto;
  min-width:24px;
  height:24px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:12px;
  font-weight:900;
  border:1px solid var(--dashLine);
  background:rgba(255,255,255,.06);
}

.dashSpotlightCard{
  display:block;
  text-decoration:none;
  border:1px solid var(--dashLine);
  border-radius:12px;
  padding:10px 12px;
  background:var(--dashCard2);
  margin-bottom:10px;
  color:var(--dashText);
}
.dashSpotlightCard__kicker{ font-size:11px; color:var(--dashMuted); text-transform:uppercase; letter-spacing:.05em; }
.dashSpotlightCard__title{ font-size:15px; font-weight:900; margin-top:2px; }
.dashSpotlightCard__meta{ font-size:12px; color:var(--dashMuted); margin-top:3px; }

.dashHomeGrid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(0,.9fr);
  gap:12px;
}
.dashHomeCard{
  border:1px solid var(--dashLine);
  border-radius:14px;
  padding:12px;
  background:var(--dashCard);
}
.dashHomeCard--profile{
  display:grid;
  gap:8px;
}
.dashHomeCard--joinAction{
  display:grid;
  gap:8px;
  align-content:start;
}
.dashHomeCard--joinCode{
  grid-column:1 / -1;
}
.dashHomeMetaCompact{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px 10px;
  font-size:12px;
  color:var(--dashMuted);
}
.dashHomeMetaCompact strong{ color:var(--dashText); font-weight:800; }
.dashHomeMetaCompact__bio{
  grid-column:1 / -1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

@media (max-width:1100px){
  .dashNavTiles{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:920px){
  .dashHomeGrid{ grid-template-columns:1fr; }
}
@media (max-width:720px){
  .dashNavTiles{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
.dashSubnav, .dashSubnav *{ pointer-events: auto !important; }

.dashSubnav__row{
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  gap: 6px;
  padding: 8px;
  min-width: 920px;
}
@media (max-width: 920px){
  .dashSubnav__row{ min-width: 980px; }
}

.dashSubnav a{
  text-decoration: none;
  color: var(--dashMuted);
  border: 1px solid transparent;
  padding: 8px 12px;
  border-radius: 999px;
  font-weight: 900;
  font-size: 13px;
  white-space: nowrap;
  transition: background 120ms ease, transform 120ms ease, border-color 120ms ease, color 120ms ease;
}

.dashSubnav a:hover{
  background: rgba(255,255,255,.06);
  color: var(--dashText);
  border-color: rgba(255,255,255,.14);
  transform: translateY(-1px);
}

.dashSubnav a.active{
  background: rgba(255,30,45,.18);
  border-color: rgba(255,30,45,.40);
  color: #fff;
}

/* Abgelaufene Events: Filter-Pills */
.dashFilterRow{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 14px;
}
.dashFilterBtn{
  appearance: none;
  cursor: pointer;
  border: 1px solid var(--dashLine);
  background: rgba(255,255,255,.04);
  color: var(--dashMuted);
  padding: 8px 14px;
  border-radius: 999px;
  font-weight: 800;
  font-size: 13px;
  transition: background 120ms ease, border-color 120ms ease, color 120ms ease;
}
.dashFilterBtn:hover{
  background: rgba(255,255,255,.07);
  color: var(--dashText);
  border-color: rgba(255,255,255,.14);
}
.dashFilterBtn.active{
  background: rgba(255,30,45,.18);
  border-color: rgba(255,30,45,.40);
  color: #fff;
}

.dashSection .listItem--static{
  cursor: default;
  text-decoration: none;
  color: inherit;
}
.dashSection .listItem--static:hover{
  background: rgba(255,255,255,.04);
}
.dashSection .listItem__right--stack{
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
}

/* Meine Teams — Card-Layout */
.dashTeamGridHost{ margin-top: 4px; }
.dashTeamGrid{
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.dashTeamCard{
  border: 1px solid var(--dashLine);
  border-radius: 20px;
  background: linear-gradient(165deg, rgba(255,255,255,.07) 0%, rgba(255,255,255,.03) 100%);
  box-shadow: var(--dashShadowSoft);
  overflow: hidden;
  backdrop-filter: var(--dashBlur);
  -webkit-backdrop-filter: var(--dashBlur);
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}
.dashTeamCard:hover{
  border-color: rgba(255,30,45,.28);
  box-shadow: 0 16px 48px rgba(0,0,0,.4);
  transform: translateY(-2px);
}
.dashTeamCard__main{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px 16px;
}
.dashTeamCard__main--teamFirst{
  align-items: center;
}
.dashTeamCard__teamBlock{
  flex: 1 1 220px;
  min-width: 0;
}
.dashTeamCard__teamBlock--primary{
  display: grid;
  gap: 6px;
}
.dashTeamCard__teamKicker{
  display: block;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--dashMuted);
  margin-bottom: 4px;
}
.dashTeamCard__teamName{
  margin: 0 0 8px;
  font-size: clamp(18px, 2.2vw, 22px);
  font-weight: 900;
  letter-spacing: -0.02em;
  line-height: 1.15;
  color: var(--dashText);
}
.dashTeamCard__playerLine{
  margin: 0;
  font-size: 13.5px;
  line-height: 1.45;
  color: var(--dashMuted);
}
.dashTeamCard__playerHint{
  display: inline;
  margin-right: 6px;
}
.dashTeamCard__playerName{
  color: var(--dashText);
  font-weight: 800;
}
.dashTeamCard__eventLine{
  margin: 2px 0 0;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: var(--dashMuted);
  flex-wrap: wrap;
}
.dashTeamCard__eventLabel{
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
  font-size: 10px;
  color: rgba(255,255,255,.65);
}
.dashTeamCard__eventValue{
  display: inline-flex;
  align-items: center;
  padding: 3px 9px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.05);
  color: var(--dashText);
  font-weight: 700;
}
.dashTeamCard__role{
  display: inline-block;
  margin-left: 8px;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  color: var(--dashMuted);
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.05);
  vertical-align: middle;
}
.dashTeamCard__actions{
  flex: 0 0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}
.dashTeamCard__actions--inline{
  margin-left: auto;
  justify-content: flex-end;
}
.dashTeamCard__btn{
  border-radius: 999px;
  white-space: nowrap;
}
@media (max-width: 560px){
  .dashTeamCard__main{
    flex-direction: column;
    align-items: stretch;
  }
  .dashTeamCard__actions{
    justify-content: stretch;
    padding-top: 4px;
    border-top: 1px solid rgba(255,255,255,.08);
    margin-top: 4px;
  }
  .dashTeamCard__btn{
    flex: 1;
    justify-content: center;
  }
}

/* Sections */
.dashSection{ padding: 18px; }
.dashHead{ margin-bottom: 10px; }
.dashHead h2{ margin:0; color: var(--dashText); }
.dashHead h2 .dashHead__sub{
  font-size:.62em;
  font-weight:600;
  color:var(--dashMuted);
}
.dashHead h2 .dashHead__sub--nowrap{
  white-space:nowrap;
}

/* Profil: Speichern oben rechts neben Titel */
.dashHead.dashHead--profileSave{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:12px 16px;
}
.dashHead--profileSave__main{
  flex:1 1 200px;
  min-width:0;
}
.dashHead--profileSave__actions{
  flex:0 0 auto;
  align-self:flex-start;
  margin-left:auto;
}

/* Empty state */
.dashEmpty{
  border: 1px dashed rgba(255,255,255,.20);
  background: rgba(255,255,255,.03);
  border-radius: 18px;
  padding: 14px;
  color: var(--dashMuted);
  display:flex;
  align-items:center;
  justify-content:center;
  min-height: 74px;
  font-weight: 900;
  text-align:center;

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

/* CTA row */
.dashRowCta{
  margin-top: 12px;
  display:flex;
  justify-content:flex-end;
  gap: 10px;
  flex-wrap: wrap;

  position: relative;
  z-index: 9999;
  pointer-events: auto;
}
.dashRowCta .btn{ border-radius: 999px; }

/* Edit avatar row */
.editAvatarRow{
  display:flex;
  gap:12px;
  align-items:center;
  flex-wrap:wrap;
}
.editAvatarRow .dashAvatar{
  width:72px;
  height:72px;
  border-radius: 20px;
}
.editAvatarActions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}

/* Deko-Layer dürfen keine Klicks blocken */
.dashHero__panel::before,
.panel::before,
.panel::after{ pointer-events: none !important; }

/* hidden muss wirklich verstecken */
[hidden]{ display:none !important; }

/* Speichern/Button darf nicht überdeckt werden */
#profileForm{ position: relative; z-index: 1; }
#saveProfileBtn{ position: relative; z-index: 9999; pointer-events: auto !important; }

/* =========================================================
   Overview Card extras (Join/Create rows)
========================================================= */

/* Header row in overview card */
.dashCard__headRow{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
}

/* Next event row */
.dashNextRow{
  display:flex;
  align-items:center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 4px;
}
.dashNextBtn{
  border-radius: 999px;
  white-space: nowrap;
}

/* Join + Create Row */
.dashActionRow{
  display:flex;
  gap: 10px;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
}

.dashJoinBox{
  flex: 1 1 340px;
  min-width: 260px;
}

.dashJoinInline{
  display:flex;
  gap: 10px;
  align-items:center;
}

.dashJoinInline .input{ flex: 1 1 auto; }

.dashJoinHint{
  margin-top: 6px;
  font-size: 12.5px;
  min-height: 16px;
  color: var(--dashMuted);
}

/* Create button on top/right */
.dashCreateTop{ border-radius: 999px; }
.dashCreateBtn{
  flex: 0 0 auto;
  white-space: nowrap;
}

/* Join row: only join field (no create button) */
.dashActionRow{
  justify-content: flex-start;
}

/* Email + Create-Button Row */
.dashEmailRow{
  display:flex;
  align-items:center;
  gap: 10px;
  width: 100%;
}
.dashEmailRow #dashEmail{
  flex: 1 1 auto;
  min-width: 0;
}
.dashEmailRow .dashCreateTop{
  margin-left: auto;
  white-space: nowrap;
}
/* =========================
   DASHBOARD – Apple Glass polish (override)
   -> ans ENDE der dashboard.css
========================= */
.dashPage{
  /* mehr “premium glass” */
  --dashLine: rgba(255,255,255,.10);
  --dashLineStrong: rgba(255,255,255,.16);
  --dashCard: rgba(255,255,255,.035);
  --dashCard2: rgba(255,255,255,.055);
  --dashCardHover: rgba(255,255,255,.075);

  --dashShadow: 0 24px 90px rgba(0,0,0,.55);
  --dashShadowSoft: 0 16px 50px rgba(0,0,0,.40);
}

/* Kanten: “hairline” + leichte Innenkante */
.dashHero__panel,
.dashMetaCard,
.dashAvatar{
  border-color: var(--dashLine) !important;
  box-shadow: var(--dashShadowSoft) !important;
}

.dashHero__panel{
  box-shadow: var(--dashShadow) !important;
}

/* Glas stärker, aber clean */
.dashHero__panel,
.dashMetaCard{
  background: linear-gradient(
    180deg,
    rgba(255,255,255,.06) 0%,
    rgba(255,255,255,.03) 60%,
    rgba(255,255,255,.025) 100%
  ) !important;
}

/* Subtle inner highlight (Apple-like) */
.dashHero__panel::after,
.dashMetaCard::after{
  content:"";
  position:absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events:none;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    inset 0 -1px 0 rgba(0,0,0,.20);
  opacity: .9;
}

/* Überschrift-Glow etwas cleaner */
.dashH1{
  text-shadow: 0 18px 60px rgba(0,0,0,.60) !important;
}

/* Stats: mehr “capsule tiles” */
.dashStat{
  background: rgba(255,255,255,.04) !important;
  border-color: rgba(255,255,255,.12) !important;
}
.dashStat:hover{
  background: rgba(255,255,255,.06) !important;
  border-color: rgba(255,255,255,.18) !important;
}

/* Buttons im Dashboard: mehr Premium (nicht flach-grau) */
.dashPage .btn{
  background: rgba(255,255,255,.06) !important;
  border-color: rgba(255,255,255,.16) !important;
}
.dashPage .btn:hover{
  background: rgba(255,255,255,.09) !important;
  border-color: rgba(255,255,255,.22) !important;
}
.dashPage .btn--primary,
.dashPage .dashCreateTop{
  background: rgba(255,30,45,.22) !important;
  border-color: rgba(255,30,45,.45) !important;
  color: #fff !important;
  box-shadow: 0 16px 40px rgba(255,30,45,.14) !important;
}
.dashPage .btn--primary:hover,
.dashPage .dashCreateTop:hover{
  background: rgba(255,30,45,.28) !important;
  border-color: rgba(255,30,45,.60) !important;
}

/* Tabs: aktiver Tab “glow” */
.dashSubnav a.active{
  box-shadow:
    0 0 0 2px rgba(255,30,45,.14),
    0 16px 44px rgba(0,0,0,.35) !important;
}

/* Inputs: weniger “grau”, mehr glass */
.dashPage .input{
  background: rgba(255,255,255,.05) !important;
  border-color: rgba(255,255,255,.14) !important;
}
.dashPage .input:focus{
  background: rgba(255,255,255,.07) !important;
  border-color: rgba(255,30,45,.55) !important;
}

/* =========================================================
   HOME MODE (authoritative): echtes Kachel-Dashboard
========================================================= */
body[data-dashboard-mode="home"] .dashSection{
  display:none !important;
}
body[data-dashboard-mode="home"] .hr{
  display:none !important;
}
body[data-dashboard-mode="home"] .dashHero__panel{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:0 !important;
  padding:14px !important;
}
body[data-dashboard-mode="home"] .dashHomeGrid{
  display:grid !important;
  grid-template-columns:1fr !important;
  column-gap:10px !important;
  row-gap:10px !important;
  align-items:start !important;
  --dashTileHeight:146px;
  --dashZoneGap:12px;
  --dashZoneHeight:calc((var(--dashTileHeight) * 3) + (var(--dashZoneGap) * 2));
}
body[data-dashboard-mode="home"] .dashBoardTiles{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  grid-template-rows:repeat(3,var(--dashTileHeight)) !important;
  grid-auto-rows:var(--dashTileHeight) !important;
  grid-auto-flow:row dense !important;
  gap:var(--dashZoneGap) !important;
  height:var(--dashZoneHeight) !important;
  min-height:var(--dashZoneHeight) !important;
  max-height:var(--dashZoneHeight) !important;
  overflow:hidden !important;
}
body[data-dashboard-mode="home"] .dashBoardTiles > [data-dash-tile]{
  height:var(--dashTileHeight) !important;
  min-height:var(--dashTileHeight) !important;
}
body[data-dashboard-mode="home"] .dashBoardTiles > [data-dash-tile].is-wide-tile{
  grid-column:span 2 !important;
}
body[data-dashboard-mode="home"] .dashBoardTiles .dashHomeCard--profile,
body[data-dashboard-mode="home"] .dashBoardTiles .dashHomeCard--joinCode{
  grid-column:span 2 !important;
}
body[data-dashboard-mode="home"] .dashHomeLeftStack{
  grid-column:1 / 2 !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  grid-template-rows:repeat(3,var(--dashTileHeight)) !important;
  grid-auto-rows:var(--dashTileHeight) !important;
  gap:var(--dashZoneGap) !important;
  align-content:start !important;
  align-self:start !important;
  height:var(--dashZoneHeight) !important;
  min-height:var(--dashZoneHeight) !important;
  max-height:var(--dashZoneHeight) !important;
  overflow:hidden !important;
}
body[data-dashboard-mode="home"] .dashHomeCard{
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03)) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:16px !important;
  padding:10px !important;
  box-shadow:0 14px 40px rgba(0,0,0,.35) !important;
  overflow:hidden !important;
}
body[data-dashboard-mode="home"] [data-dash-tile]{
  transition:transform .16s ease, border-color .16s ease, background .16s ease, box-shadow .16s ease !important;
  cursor:pointer;
}
body[data-dashboard-mode="home"] [data-dash-tile]:hover{
  transform:translateY(-2px) !important;
  border-color:rgba(255,255,255,.24) !important;
  background:rgba(255,255,255,.10) !important;
}
body[data-dashboard-mode="home"] [data-dash-tile].is-dragging{
  opacity:.72;
  cursor:grabbing;
  transform:scale(.99) !important;
}
body[data-dashboard-mode="home"] .dashHomeLeftStack > [data-dash-tile]{
  height:var(--dashTileHeight) !important;
  min-height:var(--dashTileHeight) !important;
}
body[data-dashboard-mode="home"] .dashNavTiles > [data-dash-tile]{
  height:var(--dashTileHeight) !important;
  min-height:var(--dashTileHeight) !important;
}
body[data-dashboard-mode="home"] .dashNavTiles > [data-dash-tile].is-wide-tile{
  grid-column:1 / -1 !important;
}
body[data-dashboard-mode="home"] .dashHomeLeftStack > [data-dash-tile].is-wide-tile{
  grid-column:1 / -1 !important;
}
body[data-dashboard-mode="home"] [data-dash-dropzone].is-drop-target{
  outline:1px dashed rgba(255,255,255,.28);
  outline-offset:6px;
  border-radius:14px;
}
body[data-dashboard-mode="home"] .dashHomeCard--profile,
body[data-dashboard-mode="home"] .dashHomeCard--joinCode{
  grid-column:1 / -1 !important;
  box-shadow:0 14px 40px rgba(0,0,0,.35) !important;
}
body[data-dashboard-mode="home"] .dashHomeCard--joinCode{
  margin-top:0 !important;
}
body[data-dashboard-mode="home"] .dashHomeCard--profile{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 206px !important;
  grid-template-areas:
    "profile meta"
    "stats stats" !important;
  align-items:start !important;
  column-gap:10px !important;
  row-gap:6px !important;
}
body[data-dashboard-mode="home"] .dashHomeCard--profile .dashProfileRow{
  grid-area:profile !important;
  min-width:0 !important;
}
body[data-dashboard-mode="home"] .dashHomeCard--joinCode{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  gap:8px !important;
  background:linear-gradient(165deg, rgba(255,30,45,.14) 0%, rgba(255,255,255,.06) 52%, rgba(255,255,255,.03) 100%) !important;
  border-color:rgba(255,255,255,.20) !important;
  box-shadow:0 18px 46px rgba(0,0,0,.40), inset 0 0 0 1px rgba(255,30,45,.10) !important;
  align-self:start !important;
}
body[data-dashboard-mode="home"] .dashHomeCard--profile,
body[data-dashboard-mode="home"] .dashHomeCard--joinCode{
  height:var(--dashTileHeight) !important;
  min-height:var(--dashTileHeight) !important;
}
body[data-dashboard-mode="home"] .dashHomeCard--areas{
  grid-column:2 / 3 !important;
  display:flex !important;
  align-items:stretch !important;
  min-height:var(--dashZoneHeight) !important;
  height:var(--dashZoneHeight) !important;
  max-height:var(--dashZoneHeight) !important;
  align-self:stretch !important;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:0 !important;
  overflow:hidden !important;
}
body[data-dashboard-mode="home"] .dashHomeMetaCompact{
  grid-area:meta !important;
  position:static !important;
  width:auto !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:6px !important;
  font-size:12px !important;
  text-align:left;
  min-width:0 !important;
}
body[data-dashboard-mode="home"] .dashHomeCard--profile .dashHero__statsRow{
  grid-area:stats !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:4px !important;
  margin-top:0 !important;
  width:100% !important;
}
body[data-dashboard-mode="home"] .dashHomeCard--profile .dashHero__statPill{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:1px !important;
  padding:4px 6px !important;
  border-radius:10px !important;
  border-color:rgba(255,255,255,.16) !important;
  background:rgba(255,255,255,.08) !important;
  font-size:9px !important;
  text-transform:uppercase;
  letter-spacing:.04em;
  min-height:28px;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
body[data-dashboard-mode="home"] .dashHomeCard--profile .dashHero__statPill strong{
  display:block;
  font-size:14px !important;
  line-height:1;
}
body[data-dashboard-mode="home"] .dashHomeMetaCompact__bio{
  grid-column:1 / -1 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
body[data-dashboard-mode="home"] .dashSpotlightCard{
  display:flex !important;
  min-height:unset !important;
}
body[data-dashboard-mode="home"] .dashSpotlightCard__kicker{
  font-size:11px !important;
  text-transform:uppercase !important;
  letter-spacing:.06em !important;
  color:var(--dashMuted) !important;
}
body[data-dashboard-mode="home"] .dashSpotlightCard__title{
  font-size:21px !important;
  font-weight:900 !important;
  margin-top:6px !important;
}
body[data-dashboard-mode="home"] .dashSpotlightCard__meta{
  font-size:13px !important;
  margin-top:6px !important;
}

body[data-dashboard-mode="home"] .dashNavTiles{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  grid-template-rows:repeat(3,var(--dashTileHeight)) !important;
  grid-auto-rows:var(--dashTileHeight) !important;
  gap:12px !important;
  margin-top:0 !important;
  width:100% !important;
  align-content:stretch !important;
  align-items:stretch !important;
  height:var(--dashZoneHeight) !important;
  min-height:var(--dashZoneHeight) !important;
  max-height:var(--dashZoneHeight) !important;
  overflow:hidden !important;
}
body[data-dashboard-mode="home"] .dashNavTile{
  display:flex !important;
  align-items:flex-start !important;
  gap:8px !important;
  text-decoration:none !important;
  color:var(--dashText) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:16px !important;
  padding:16px 14px !important;
  min-height:unset;
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03)) !important;
  transition:transform .16s ease, border-color .16s ease, background .16s ease !important;
  height:var(--dashTileHeight);
  min-height:0;
  overflow:hidden !important;
  position:relative;
}
body[data-dashboard-mode="home"] .dashNavTile:hover{ transform:translateY(-2px) !important; }
body[data-dashboard-mode="home"] .dashNavTile__icon{
  margin-top:2px;
}
body[data-dashboard-mode="home"] .dashNavTile__icon svg{
  width:20px;
  height:20px;
}
body[data-dashboard-mode="home"] .dashNavTile__body{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
  flex:1 1 auto;
}
body[data-dashboard-mode="home"] .dashNavTile__text{
  font-size:16px !important;
  font-weight:850 !important;
  line-height:1.15 !important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body[data-dashboard-mode="home"] .dashNavTile__textGroup{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}
body[data-dashboard-mode="home"] .dashNavTile__desc{
  display:block;
  font-size:12px;
  line-height:1.25;
  color:rgba(255,255,255,.78);
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
body[data-dashboard-mode="home"] .dashNavTile__preview{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}
body[data-dashboard-mode="home"] .dashNavTile__previewItem{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
body[data-dashboard-mode="home"] .dashNavTile__previewKicker{
  display:block;
  font-size:10px;
  line-height:1.1;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:rgba(255,255,255,.52);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body[data-dashboard-mode="home"] .dashNavTile__previewEmpty{
  display:block;
  font-size:12px;
  line-height:1.25;
  color:var(--dashMuted);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body[data-dashboard-mode="home"] .dashNavTile__previewTitle{
  display:block;
  font-size:13px;
  line-height:1.18;
  color:rgba(255,255,255,.94);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body[data-dashboard-mode="home"] .dashNavTile__previewMeta{
  display:block;
  font-size:11px;
  line-height:1.2;
  color:rgba(255,255,255,.66);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body[data-dashboard-mode="home"] .dashNavTile__meta{
  margin-left:auto !important;
  align-self:flex-start;
}
body[data-dashboard-mode="home"] .dashNavTile[data-dash-tile-id="events"] .dashNavTile__meta,
body[data-dashboard-mode="home"] .dashNavTile[data-dash-tile-id="joined"] .dashNavTile__meta,
body[data-dashboard-mode="home"] .dashNavTile[data-dash-tile-id="expired"] .dashNavTile__meta,
body[data-dashboard-mode="home"] .dashNavTile[data-dash-tile-id="teams"] .dashNavTile__meta{
  position:absolute;
  right:10px;
  bottom:10px;
  top:auto;
  margin-left:0 !important;
  align-self:auto;
  min-width:30px;
  height:30px;
  padding:0 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.01em;
  color:rgba(255,255,255,.96);
  border:1px solid rgba(255,255,255,.26);
  background:linear-gradient(180deg, rgba(255,255,255,.24), rgba(255,255,255,.10));
  box-shadow:
    0 8px 22px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,255,255,.30);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}

@media (max-width:1080px){
  body[data-dashboard-mode="home"] .dashHomeGrid{
    grid-template-columns:1fr !important;
    grid-template-rows:auto !important;
  }
  body[data-dashboard-mode="home"] .dashHomeLeftStack{
    grid-column:1 / -1 !important;
    grid-row:auto !important;
    grid-template-rows:auto !important;
    gap:12px !important;
  }
  body[data-dashboard-mode="home"] .dashNavTiles{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    grid-template-rows:auto !important;
  }
  body[data-dashboard-mode="home"] .dashHomeCard--profile{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "profile"
      "meta"
      "stats" !important;
    row-gap:8px !important;
  }
  body[data-dashboard-mode="home"] .dashHomeMetaCompact{
    position:static !important;
    width:auto !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:6px 10px !important;
  }
  body[data-dashboard-mode="home"] .dashHomeCard--joinCode{
    grid-column:1 / -1 !important;
  }
  body[data-dashboard-mode="home"] .dashHomeCard--areas{
    grid-column:1 / -1 !important;
  }
}
body[data-dashboard-mode="home"] .dashHomeCard--joinCode .dashHero__joinHead{
  margin-bottom:4px !important;
}
body[data-dashboard-mode="home"] .dashHomeCard--joinCode .dashHero__joinTitle{
  font-size:14px !important;
  margin-bottom:1px !important;
}
body[data-dashboard-mode="home"] .dashHomeCard--joinCode .dashHero__joinLead{
  font-size:11px !important;
  line-height:1.2 !important;
  max-height:none !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:normal !important;
  display:-webkit-box !important;
  -webkit-line-clamp:2 !important;
  -webkit-box-orient:vertical !important;
}
body[data-dashboard-mode="home"] .dashJoinCta__row{
  display:flex !important;
  align-items:stretch !important;
  gap:8px !important;
  width:100% !important;
  min-width:0 !important;
}
body[data-dashboard-mode="home"] .dashJoinCta__row--code{
  flex-wrap:nowrap !important;
}
body[data-dashboard-mode="home"] .dashJoinCta__input{
  flex:1 1 auto !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:36px !important;
  padding:8px 10px !important;
  font-size:12px !important;
  border-radius:12px !important;
  box-sizing:border-box !important;
}
body[data-dashboard-mode="home"] .dashJoinCta__joinBtn{
  flex:0 0 auto !important;
  white-space:nowrap !important;
  padding:8px 14px !important;
  min-height:36px !important;
  font-size:13px !important;
  font-weight:800 !important;
  border-radius:12px !important;
  box-sizing:border-box !important;
}
body[data-dashboard-mode="home"] .dashJoinCta__row--create{
  margin-top:2px !important;
}
body[data-dashboard-mode="home"] .dashJoinCta__createBtn{
  width:100% !important;
  justify-content:center !important;
  white-space:nowrap !important;
  min-height:36px !important;
  border-radius:12px !important;
  font-weight:800 !important;
  font-size:13px !important;
  box-sizing:border-box !important;
}
body[data-dashboard-mode="home"] .dashJoinCta__hint{
  margin:0 !important;
  font-size:11px !important;
  line-height:1.3 !important;
  min-height:0 !important;
}
body[data-dashboard-mode="home"] .dashJoinCta__hint:not(.u-hidden){
  margin-top:4px !important;
  min-height:1.2em !important;
}
body[data-dashboard-mode="home"] .dashBoardNoticePanel{
  margin-top:12px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:14px;
  padding:11px 12px;
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.025));
}
body[data-dashboard-mode="home"] .dashBoardNoticePanel__kicker{
  display:block;
  margin-bottom:10px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:rgba(255,255,255,.92);
}
body[data-dashboard-mode="home"] .dashBoardNoticePanel__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
body[data-dashboard-mode="home"] .dashNoticeCard{
  margin:0;
  border:1px solid rgba(255,255,255,.16);
  border-radius:10px;
  padding:8px 9px;
  min-height:86px;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  display:grid;
  align-content:start;
  gap:3px;
}
body[data-dashboard-mode="home"] .dashNoticeCard__badge{
  justify-self:start;
  display:inline-flex;
  align-items:center;
  min-height:18px;
  padding:0 7px;
  border-radius:999px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
body[data-dashboard-mode="home"] .dashNoticeCard__title{
  margin:0;
  font-size:13px;
  font-weight:850;
  line-height:1.22;
  color:#fff;
}
body[data-dashboard-mode="home"] .dashNoticeCard__meta{
  margin:0;
  font-size:11px;
  font-weight:700;
  color:rgba(255,255,255,.76);
}
body[data-dashboard-mode="home"] .dashNoticeCard__text{
  margin:0;
  font-size:11px;
  line-height:1.24;
  color:rgba(255,255,255,.82);
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
body[data-dashboard-mode="home"] .dashNoticeCard--urgent .dashNoticeCard__badge{
  color:#ffd8dd;
  border:1px solid rgba(255,73,99,.48);
  background:rgba(255,73,99,.22);
}
body[data-dashboard-mode="home"] .dashNoticeCard--soon .dashNoticeCard__badge{
  color:#ffe6b8;
  border:1px solid rgba(255,182,75,.44);
  background:rgba(255,182,75,.2);
}
body[data-dashboard-mode="home"] .dashNoticeCard--info .dashNoticeCard__badge{
  color:#cfe2ff;
  border:1px solid rgba(100,164,255,.42);
  background:rgba(100,164,255,.18);
}
@media (max-width:980px){
  body[data-dashboard-mode="home"] .dashBoardNoticePanel__grid{
    grid-template-columns:1fr;
  }
}
@media (max-width:720px){
  body[data-dashboard-mode="home"] .dashNavTiles{
    grid-template-columns:1fr !important;
  }
}

body[data-dashboard-mode="home"] .dashJoinInline{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  justify-content:stretch !important;
  gap:8px !important;
  width:100% !important;
}
body[data-dashboard-mode="home"] .dashJoinInline .input{
  max-width:none !important;
  width:100% !important;
  min-height:32px !important;
  font-size:12px !important;
}
body[data-dashboard-mode="home"] .dashJoinBox{
  display:grid !important;
  gap:8px !important;
}
body[data-dashboard-mode="home"] .dashJoinCtaRow{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:8px !important;
}
body[data-dashboard-mode="home"] .dashJoinCreateBtn,
body[data-dashboard-mode="home"] .dashJoinNextBtn{
  justify-content:center !important;
  border-radius:12px !important;
  min-height:34px !important;
  font-weight:850 !important;
  width:100% !important;
  font-size:14px !important;
}
body[data-dashboard-mode="home"] .dashJoinCreateBtn{
  box-shadow:0 14px 30px rgba(255,30,45,.22) !important;
}
body[data-dashboard-mode="home"] .dashJoinHint{
  display:none !important;
  min-height:0 !important;
  margin-top:0 !important;
  margin-bottom:0 !important;
}
body[data-dashboard-mode="home"] .dashJoinBox p{
  margin:0 !important;
}

body[data-dashboard-mode="home"] .dashCatalogStrip{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:8px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:14px;
  padding:10px 10px;
  min-height:var(--dashTileHeight);
  text-decoration:none;
  color:var(--dashText);
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  width:100%;
  max-width:100%;
  height:var(--dashTileHeight);
}
body[data-dashboard-mode="home"] .dashCatalogStrip__icon{
  margin-top:2px;
}
body[data-dashboard-mode="home"] .dashCatalogStrip__icon svg{
  width:18px;
  height:18px;
}
body[data-dashboard-mode="home"] .dashCatalogStrip__textGroup{
  display:flex;
  flex-direction:column;
  gap:5px;
  min-width:0;
}
body[data-dashboard-mode="home"] .dashCatalogStrip__text{
  font-size:18px;
  font-weight:900;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body[data-dashboard-mode="home"] .dashCatalogStrip__desc{
  font-size:12px;
  line-height:1.25;
  color:rgba(255,255,255,.80);
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
/* Feinjustierung: Event-/Spiele-Katalog */
body[data-dashboard-mode="home"] .dashCatalogStrip[data-dash-tile-id="eventCatalog"],
body[data-dashboard-mode="home"] .dashCatalogStrip[data-dash-tile-id="gameCatalog"]{
  align-items:start;
}
body[data-dashboard-mode="home"] .dashCatalogStrip[data-dash-tile-id="eventCatalog"] .dashCatalogStrip__textGroup,
body[data-dashboard-mode="home"] .dashCatalogStrip[data-dash-tile-id="gameCatalog"] .dashCatalogStrip__textGroup{
  display:grid;
  grid-template-rows:auto 1fr;
  align-content:start;
  gap:6px;
  height:100%;
}
body[data-dashboard-mode="home"] .dashCatalogStrip[data-dash-tile-id="eventCatalog"] .dashCatalogStrip__text,
body[data-dashboard-mode="home"] .dashCatalogStrip[data-dash-tile-id="gameCatalog"] .dashCatalogStrip__text{
  font-size:18px;
}
body[data-dashboard-mode="home"] .dashCatalogStrip[data-dash-tile-id="eventCatalog"] .dashCatalogStrip__desc,
body[data-dashboard-mode="home"] .dashCatalogStrip[data-dash-tile-id="gameCatalog"] .dashCatalogStrip__desc{
  font-size:13px;
  width:min(100%, 170px);
  margin-left:auto;
  margin-right:auto;
  text-align:left;
  text-align-last:auto;
  line-height:1.3;
  letter-spacing:.005em;
  word-spacing:normal;
  hyphens:auto;
  justify-self:center;
  align-self:start;
  margin-top:12px;
  transform:translateX(-10px);
  -webkit-line-clamp:3;
}

/* Feinjustierung: Profil-Kachel */
body[data-dashboard-mode="home"] .dashNavTile[data-dash-tile-id="editProfile"]{
  align-items:flex-start !important;
}
body[data-dashboard-mode="home"] .dashNavTile[data-dash-tile-id="editProfile"] .dashNavTile__body{
  display:grid;
  grid-template-rows:auto 1fr;
  align-content:start;
  gap:6px;
  height:100%;
}
body[data-dashboard-mode="home"] .dashNavTile[data-dash-tile-id="editProfile"] .dashNavTile__text{
  font-size:18px !important;
}
body[data-dashboard-mode="home"] .dashNavTile[data-dash-tile-id="events"] .dashNavTile__text,
body[data-dashboard-mode="home"] .dashNavTile[data-dash-tile-id="joined"] .dashNavTile__text,
body[data-dashboard-mode="home"] .dashNavTile[data-dash-tile-id="expired"] .dashNavTile__text,
body[data-dashboard-mode="home"] .dashNavTile[data-dash-tile-id="teams"] .dashNavTile__text{
  font-size:18px !important;
}
body[data-dashboard-mode="home"] .dashNavTile[data-dash-tile-id="editProfile"] .dashNavTile__desc{
  font-size:13px;
  width:min(100%, 170px);
  margin-left:auto;
  margin-right:auto;
  text-align:left;
  text-align-last:auto;
  line-height:1.3;
  letter-spacing:.005em;
  word-spacing:normal;
  hyphens:auto;
  justify-self:center;
  align-self:start;
  margin-top:12px;
  transform:translateX(-10px);
  -webkit-line-clamp:3;
}
body[data-dashboard-mode="home"] .dashCatalogStrip__sub{
  justify-self:end;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
  color:var(--dashMuted);
}

/* Final override for single 12-field board */
body[data-dashboard-mode="home"] #dashBoardTiles{
  align-content:start !important;
  justify-content:start !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
}
body[data-dashboard-mode="home"] #dashBoardTiles > .dashHomeCard--profile,
body[data-dashboard-mode="home"] #dashBoardTiles > .dashHomeCard--joinCode{
  grid-column:span 2 !important;
}
body[data-dashboard-mode="home"] .dashHero__panel{
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  padding:0 !important;
}
body[data-dashboard-mode="home"] .dashHero__panel::before,
body[data-dashboard-mode="home"] .dashHero__panel::after{
  display:none !important;
}
body[data-dashboard-mode="home"] .dashLayoutInfoBar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:10px;
  padding:2px 0 0;
  border:none;
  border-radius:0;
  background:transparent;
}
body[data-dashboard-mode="home"] .dashLayoutInfoText{
  font-size:13px;
  color:var(--dashMuted);
}
body[data-dashboard-mode="home"] .dashLayoutResetBtn{
  white-space:nowrap;
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  color:rgba(255,255,255,.84) !important;
  box-shadow:none !important;
  padding:7px 12px !important;
}
body[data-dashboard-mode="home"] .dashLayoutResetBtn:hover{
  background:rgba(255,255,255,.08) !important;
  border-color:rgba(255,255,255,.24) !important;
  color:#fff !important;
}

/* HOME DASHBOARD:
   viewport-stabil, mittig und ohne Footer-Cut (Chrome mit Browserleiste). */
body[data-dashboard-mode="home"]{
  --dashHomeFrameGap: 26px;
  overflow:hidden !important;
}
body[data-dashboard-mode="home"] .siteMain{
  padding:0 !important;
  display:flex;
  flex-direction:column;
  min-height:0;
}
body[data-dashboard-mode="home"] .appShell{
  flex:1 1 auto;
  min-height:0;
  overflow:hidden !important;
}
body[data-dashboard-mode="home"] .appContent{
  min-height:0;
  height:100%;
  overflow:hidden !important;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
}
/* Header bleibt immer volle Breite. */
body[data-dashboard-mode="home"] .appTopbar{
  width:100%;
}
/* Nur den Dashboard-Boxinhalt zentrieren (nicht den Header). */
body[data-dashboard-mode="home"] .container.section.appContent__inner{
  width:100%;
  max-width:none;
  margin:0;
  min-height:0;
  padding:0 !important;
  overflow:hidden !important;
  display:flex;
  align-items:center;
  justify-content:center;
}
@media (min-height: 900px) and (min-width: 768px){
  body[data-dashboard-mode="home"] .container.section.appContent__inner{
    align-items:flex-start;
  }
}
body[data-dashboard-mode="home"] .container.section.appContent__inner > .dashHero{
  width:min(1180px, 94vw);
  margin:var(--dashHomeFrameGap) auto;
  max-height:calc(100% - (var(--dashHomeFrameGap) * 2));
}

/* Mobil + App-Shell: Home nutzt dieselbe Scroll-Spalte wie andere Shell-Seiten */
@media (max-width:900px){
  body[data-dashboard-mode="home"]:has(.appShell) .appContent{
    display:flex !important;
    flex-direction:column !important;
    grid-template-rows:unset !important;
    height:auto !important;
  }
  body[data-dashboard-mode="home"]:has(.appShell) .container.section.appContent__inner{
    overflow-x:hidden !important;
    overflow-y:auto !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    flex:1 1 auto !important;
    min-height:0 !important;
  }
  body[data-dashboard-mode="home"]:has(.appShell) .container.section.appContent__inner > .dashHero{
    max-height:none !important;
    width:100% !important;
    margin-left:0;
    margin-right:0;
  }
}

/* Adaptive Kompaktstufe: kleinere Fensterhoehen (z.B. Chrome mit sichtbarer Leiste).
   Fullscreen/hohe Viewports bleiben unveraendert. */
@media (max-height: 860px) and (min-width: 768px){
  body[data-dashboard-mode="home"] .container.section.appContent__inner > .dashHero{
    width:min(1140px, 94vw);
  }
  body[data-dashboard-mode="home"] #dashBoardTiles{
    gap:10px !important;
  }
  body[data-dashboard-mode="home"] .dashBoardTiles > [data-dash-tile]{
    min-height:112px !important;
  }
  body[data-dashboard-mode="home"] .dashHomeCard{
    padding:12px 14px !important;
    border-radius:16px !important;
  }
  body[data-dashboard-mode="home"] .dashLayoutInfoBar{
    margin-top:8px !important;
  }
  body[data-dashboard-mode="home"] .dashBoardNoticePanel{
    margin-top:8px !important;
    padding:10px 12px !important;
  }
  body[data-dashboard-mode="home"] .dashBoardNoticePanel__grid{
    gap:8px !important;
  }
  body[data-dashboard-mode="home"] .dashNoticeCard{
    padding:8px 10px !important;
  }
  body[data-dashboard-mode="home"] .dashNoticeCard__text{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
}

@media (max-height: 780px) and (min-width: 768px){
  body[data-dashboard-mode="home"]{
    --dashHomeFrameGap: 18px;
  }
  body[data-dashboard-mode="home"] .appTopbar{
    min-height:62px;
    padding:10px 18px;
  }
  body[data-dashboard-mode="home"] .appTopbar__title{
    font-size:clamp(20px, 2vw, 28px);
  }
  body[data-dashboard-mode="home"] #dashBoardTiles{
    gap:8px !important;
  }
  body[data-dashboard-mode="home"] .dashBoardTiles > [data-dash-tile]{
    min-height:98px !important;
  }
  body[data-dashboard-mode="home"] .dashHomeCard{
    padding:10px 12px !important;
  }
  body[data-dashboard-mode="home"] .dashBoardNoticePanel__kicker{
    margin-bottom:6px !important;
  }
}

/* board12 mode: alte 2-Section-Container komplett aus dem Layout nehmen */
body[data-dashboard-mode="home"][data-dashboard-layout="board12"] .dashHomeLeftStack,
body[data-dashboard-mode="home"][data-dashboard-layout="board12"] .dashHomeCard--areas{
  display:none !important;
}
body[data-dashboard-mode="home"][data-dashboard-layout="board12"] #dashBoardTiles{
  margin-top:0 !important;
}

/* =========================================================
   DETAIL MODE: neues Kachel-Layout
========================================================= */
body[data-dashboard-mode="detail"] .appTopbar--dashNextCenter{
  align-items:center;
}
body[data-dashboard-mode="detail"] .appTopbar--dashNextCenter .appTopbar__right{
  position:absolute;
  right:22px;
  top:50%;
  transform:translateY(-50%);
}
body[data-dashboard-mode="detail"] .dashBackLink{
  font-size:12px;
  font-weight:800;
  opacity:.85;
}
body[data-dashboard-mode="detail"] .dashBackLink:hover{
  opacity:1;
}
@media (max-width: 720px){
  body[data-dashboard-mode="detail"] .appTopbar--dashNextCenter .appTopbar__right{
    position:static;
    transform:none;
  }
}

body[data-dashboard-mode="detail"] .dashSection{
  position:relative;
  padding:20px;
}

/* Detail-Modus: Seite darf nicht scrollen, nur Listenbereich */
html:has(body[data-dashboard-mode="detail"]){
  overflow: hidden;
  height: 100%;
  max-height: 100dvh;
}
body[data-dashboard-mode="detail"]{
  overflow: hidden !important;
  height: 100dvh;
  max-height: 100dvh;
  min-height: 0;
}

/* Layout nutzen: footer bleibt sichtbar, scroll nur im Listen-Host */
body[data-dashboard-mode="detail"] .siteMain{
  padding: 0 !important;
  overflow:hidden !important;
  display:flex;
  flex-direction: column;
  min-height: 0;
  /* Volle Resthöhe unter dem Footer — keine feste 100dvh-Formel (Footer-Höhe variiert). */
  flex: 1 1 auto;
}
/* Shell füllt nur noch main.siteMain (nicht erneut 100dvh − 56px, sonst Clipping). */
body[data-dashboard-mode="detail"] .siteMain > .appShell{
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
body[data-dashboard-mode="detail"] .appContent{
  flex: 1 1 auto;
  overflow:hidden !important;
  display:flex;
  flex-direction: column;
  min-height: 0;
}
body[data-dashboard-mode="detail"] .container.section.appContent__inner{
  flex: 1 1 auto;
  min-height: 0;
  overflow:hidden !important;
}

/* Detail-Dashboard (Profil + Events): Bottom-Padding aus .section vermeiden,
   damit Content nicht unter/gegen den Footer abgeschnitten wird. */
body[data-dashboard-mode="detail"] .container.section.appContent__inner{
  /* top minimal lassen (Filter- / Head-Spacing), bottom raus */
  padding:10px 0 0 !important;
}

/* Weniger Abstand zwischen App-Header und Filterzeile (Meine / Beigetretene / Abgelaufene) */
body[data-dashboard-mode="detail"] .dashPage .container.section.appContent__inner{
  padding-top: 10px;
}
body[data-dashboard-mode="detail"] .dashSection:not([hidden]){
  min-height: 0;
  display:flex;
  flex-direction: column;
  overflow:hidden;
}

/* Eventkalender (#calendar): mehr Luft unter der Topbar; Raster füllt die Höhe */
body[data-dashboard-mode="detail"]:has(#calendar:not([hidden])) .container.section.appContent__inner{
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding-top: 26px !important;
  padding-bottom: 12px !important;
  box-sizing: border-box;
}
body[data-dashboard-mode="detail"] #calendar:not([hidden]){
  flex: 1 1 auto;
  min-height: 0;
  overflow: hidden;
  padding: 12px 12px 6px;
}
body[data-dashboard-mode="detail"] #calendar:not([hidden]) .dashHead{
  flex-shrink: 0;
  margin-bottom: 6px;
}
body[data-dashboard-mode="detail"] #calendar:not([hidden]) .dashEventCalendar{
  flex: 1 1 auto;
  min-height: 0;
  margin-top: 12px;
  padding: 10px 12px 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
body[data-dashboard-mode="detail"] #calendar:not([hidden]) .dashEventCalendar__weekdays{
  flex-shrink: 0;
  margin-bottom: 4px;
}
body[data-dashboard-mode="detail"] #calendar:not([hidden]) .dashEventCalendar__grid{
  flex: 1 1 auto;
  min-height: 0;
  height: 100%;
  overflow: hidden;
  align-content: stretch;
  grid-auto-rows: minmax(0, 1fr);
}
body[data-dashboard-mode="detail"] #calendar:not([hidden]) .dashEventCalendar__cell,
body[data-dashboard-mode="detail"] #calendar:not([hidden]) .dashEventCalendar__cell--empty{
  min-height: 0;
}

/* Profil-Tab im Detail-Dashboard: kompakter und ohne Abschneiden */
body[data-dashboard-mode="detail"] #profile:not([hidden]){
  overflow:auto;
  padding:0;
  border:none;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
body[data-dashboard-mode="detail"] #profile #profileForm{
  display:flex;
  flex-direction:column;
  gap:8px;
}
body[data-dashboard-mode="detail"] #profile .dashHead{
  margin-bottom:4px;
}
body[data-dashboard-mode="detail"] #profile .dashMetaGrid{
  gap:8px;
  margin-top:6px;
}
body[data-dashboard-mode="detail"] #profile .dashMetaCard{
  padding:10px;
  border-radius:16px;
}
body[data-dashboard-mode="detail"] #profile .dashMetaT{
  margin-bottom:3px;
  font-size:13px;
}
body[data-dashboard-mode="detail"] #profile .editAvatarRow{
  gap:10px;
}
body[data-dashboard-mode="detail"] #profile .editAvatarRow .dashAvatar{
  width:60px;
  height:60px;
  border-radius:16px;
}

/* Genau 4 Events je Spalte sichtbar (danach scroll im Host); .dashPage = auch Home-Dashboard */
body[data-dashboard-mode="detail"],
.dashPage{
  --dashDetailRows: 3;
  --dashDetailTileHeight: clamp(132px, 18vh, 168px);
  --dashDetailListGap: 14px;
  --dashDetailListHeight: calc((var(--dashDetailTileHeight) * var(--dashDetailRows)) + (var(--dashDetailListGap) * (var(--dashDetailRows) - 1)));
}

@media (max-height: 820px){
  body[data-dashboard-mode="detail"]{
    --dashDetailListGap: 10px;
  }
}

body[data-dashboard-mode="detail"] #myEventsList,
body[data-dashboard-mode="detail"] #myTeamsList{
  flex: 0 0 auto;
  height: var(--dashDetailListHeight);
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  position: relative;
  padding-right: 16px;
  /* Native Overlay-Scrollbar ausblenden (macOS), damit Breite nicht springt */
  scrollbar-width: none;
  -ms-overflow-style: none;
}

body[data-dashboard-mode="detail"] #myEventsList::-webkit-scrollbar,
body[data-dashboard-mode="detail"] #myTeamsList::-webkit-scrollbar{
  width: 0;
  height: 0;
}

/* Eigene permanente Scrollbar (konstante Breite, mouse-draggable) */
body[data-dashboard-mode="detail"] .dashDetailScrollRail{
  position:absolute;
  top:10px;
  bottom:10px;
  right:3px;
  width:10px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.08));
  border:1px solid rgba(255,255,255,.16);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.06);
  z-index:2;
}
body[data-dashboard-mode="detail"] .dashDetailScrollRail.is-disabled{
  opacity:.45;
}
body[data-dashboard-mode="detail"] .dashDetailScrollThumb{
  position:absolute;
  left:0;
  top:0;
  width:100%;
  min-height:44px;
  border-radius:999px;
  background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.62));
  border:2px solid rgba(255,255,255,.14);
  box-shadow:0 6px 18px rgba(0,0,0,.30);
  cursor:grab;
  transition:filter .14s ease, box-shadow .14s ease;
}
body[data-dashboard-mode="detail"] .dashDetailScrollThumb:hover{
  filter:brightness(1.04);
}
body[data-dashboard-mode="detail"] .dashDetailScrollThumb.is-dragging{
  cursor:grabbing;
  filter:brightness(1.08);
}

/* Mobil: nur Dokument-Scroll (rechte Browser-Leiste); Custom-Rail ausblenden */
@media (max-width:900px){
  body[data-dashboard-mode="detail"] .dashDetailScrollRail{
    display:none !important;
    pointer-events:none !important;
  }
  /* Rail weg → kein reserviertes padding-right, sonst wirken Kacheln schmaler mit Lücke rechts */
  body[data-dashboard-mode="detail"] #myEventsList,
  body[data-dashboard-mode="detail"] #myTeamsList{
    padding-right: 0;
  }
}

body[data-dashboard-mode="detail"] #myEventsList .list{
  height:auto;
  overflow:visible;
}
body[data-dashboard-mode="detail"] .dashHead{
  margin-bottom:14px;
}
body[data-dashboard-mode="detail"] .dashHead--withFilters{
  display:grid;
  gap:10px;
}
body[data-dashboard-mode="detail"] .dashHead--withFilters .muted{
  margin:0;
}

body[data-dashboard-mode="detail"] .dashFilterRow{
  margin-bottom:0;
  padding:4px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:rgba(255,255,255,.03);
  width:max-content;
  max-width:100%;
}
body[data-dashboard-mode="detail"] .dashFilterRow--above{
  border:none;
  background:transparent;
  padding:0;
  position:static;
  z-index:auto;
  margin:4px auto 12px;
  width:100%;
  max-width:100%;
  justify-content:center;
  gap:10px;
}
/* Meine Events: eine Zeile — Suche | Rolle | Status | Sortierung; space-between über volle Breite */
body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified{
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  padding-left:20px;
  padding-right:20px;
  margin-left:0;
  margin-right:0;
  /* Bei vielen Filtern horizontal scrollbar statt abgeschnittener Pill-Texte. */
  overflow-x:auto;
  overflow-y:visible;
  scrollbar-width:none;
  -ms-overflow-style:none;
}
body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified::-webkit-scrollbar{
  width:0;
  height:0;
}
body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--pills{
  flex:0 0 auto;
  width:max-content;
  max-width:100%;
  min-width:max-content;
  flex-wrap:nowrap;
  justify-content:flex-start;
  overflow:visible;
}
body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--search{
  flex:0 0 auto;
  width:112px;
  max-width:112px;
  min-width:112px;
  border:none;
  background:transparent;
  padding:0;
  box-shadow:none;
  border-radius:0;
}
body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--sort{
  flex:0 0 auto;
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:stretch;
  gap:0;
  justify-content:stretch;
  width:200px;
  min-width:200px;
  max-width:200px;
  border:none;
  background:transparent;
  padding:0;
  box-shadow:none;
  border-radius:0;
  margin-left:auto;
}
body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--calendarToolbarHost{
  display:none;
  flex:0 0 auto;
  min-width:0;
  margin-left:auto;
  border:none;
  background:transparent;
  padding:0;
  box-shadow:none;
  border-radius:0;
}
body[data-dashboard-mode="detail"] #eventsFilterRow[data-events-view="#calendar"] .dashFilterGroup--search,
body[data-dashboard-mode="detail"] #eventsFilterRow[data-events-view="#calendar"] .dashFilterGroup--sort,
body[data-dashboard-mode="detail"] #eventsFilterRow[data-events-view="#events-map"] .dashFilterGroup--search,
body[data-dashboard-mode="detail"] #eventsFilterRow[data-events-view="#events-map"] .dashFilterGroup--sort{
  display:none !important;
}
body[data-dashboard-mode="detail"] #eventsFilterRow[data-events-view="#calendar"] .dashFilterGroup--calendarToolbarHost{
  display:flex !important;
}
body[data-dashboard-mode="detail"] #eventsFilterRow[data-events-view="#calendar"] .dashEventCalendar__toolbar{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  margin:0;
}
body[data-dashboard-mode="detail"] #eventsFilterRow[data-events-view="#calendar"] .dashEventCalendar__monthLabel{
  font-size:clamp(18px,2vw,24px);
}
body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--calendarQuick{
  flex:0 0 auto;
  width:44px;
  min-width:44px;
  max-width:44px;
  border:none;
  background:transparent;
  padding:0;
  box-shadow:none;
  border-radius:0;
}
body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--eventsListQuick{
  flex:0 0 auto;
  width:44px;
  min-width:44px;
  max-width:44px;
  border:none;
  background:transparent;
  padding:0;
  box-shadow:none;
  border-radius:0;
}
body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--eventsMapQuick{
  flex:0 0 auto;
  width:44px;
  min-width:44px;
  max-width:44px;
  border:none;
  background:transparent;
  padding:0;
  box-shadow:none;
  border-radius:0;
}
body[data-dashboard-mode="detail"] .dashCalendarQuickBtn{
  width:44px;
  height:38px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.05);
  color:rgba(255,255,255,.88);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:background 120ms ease, border-color 120ms ease, color 120ms ease, box-shadow 120ms ease;
}
body[data-dashboard-mode="detail"] .dashEventsListQuickBtn{
  width:44px;
  height:38px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.05);
  color:rgba(255,255,255,.88);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:background 120ms ease, border-color 120ms ease, color 120ms ease, box-shadow 120ms ease;
}
body[data-dashboard-mode="detail"] .dashEventsListQuickBtn:hover{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.24);
  color:#fff;
}
body[data-dashboard-mode="detail"] .dashEventsListQuickBtn.is-active{
  background:rgba(255,30,45,.18);
  border-color:rgba(255,30,45,.44);
  color:#fff;
  box-shadow:0 0 0 1px rgba(255,30,45,.14), 0 10px 24px rgba(0,0,0,.28);
}
body[data-dashboard-mode="detail"] .dashCalendarQuickBtn:hover{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.24);
  color:#fff;
}
body[data-dashboard-mode="detail"] .dashCalendarQuickBtn.is-active{
  background:rgba(255,30,45,.18);
  border-color:rgba(255,30,45,.44);
  color:#fff;
  box-shadow:0 0 0 1px rgba(255,30,45,.14), 0 10px 24px rgba(0,0,0,.28);
}
body[data-dashboard-mode="detail"] .dashEventsMapQuickBtn{
  width:44px;
  height:38px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.05);
  color:rgba(255,255,255,.88);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:background 120ms ease, border-color 120ms ease, color 120ms ease, box-shadow 120ms ease;
}
body[data-dashboard-mode="detail"] .dashEventsMapQuickBtn:hover{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.24);
  color:#fff;
}
body[data-dashboard-mode="detail"] .dashEventsMapQuickBtn.is-active{
  background:rgba(255,30,45,.18);
  border-color:rgba(255,30,45,.44);
  color:#fff;
  box-shadow:0 0 0 1px rgba(255,30,45,.14), 0 10px 24px rgba(0,0,0,.28);
}
body[data-dashboard-mode="detail"] .dashEventsMapQuickBtn:focus-visible{
  outline:none;
  box-shadow:0 0 0 2px rgba(255,30,45,.26);
  border-color:rgba(255,30,45,.48);
}
body[data-dashboard-mode="detail"] .dashEventsListQuickBtn:focus-visible{
  outline:none;
  box-shadow:0 0 0 2px rgba(255,30,45,.26);
  border-color:rgba(255,30,45,.48);
}
body[data-dashboard-mode="detail"] .dashCalendarQuickBtn:focus-visible{
  outline:none;
  box-shadow:0 0 0 2px rgba(255,30,45,.26);
  border-color:rgba(255,30,45,.48);
}
/* Meine Events: Rolle+Status-Zellen nur Desktop-Pills; Mobil siehe Mediaquery */
body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--myEventsCell{
  display:none;
}
body[data-dashboard-mode="detail"] .dashFilterSortSelect{
  width:100%;
  min-width:0;
  max-width:100%;
  min-height:38px;
  margin:0;
  padding:6px 8px;
  border-radius:12px;
  font-weight:700;
  font-size:12px;
  line-height:1.25;
  cursor:pointer;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
  color:inherit;
}
body[data-dashboard-mode="detail"] .dashFilterSortSelect:focus{
  border-color:rgba(255,30,45,.45);
  background:rgba(255,255,255,.07);
  outline:none;
  box-shadow:0 0 0 2px rgba(255,30,45,.2);
}
body[data-dashboard-mode="detail"] .dashEventsSearchInput{
  width:100%;
  min-width:0;
  min-height:38px;
  margin:0;
  padding:6px 8px;
  border-radius:12px;
  font-size:12px;
  font-weight:600;
  line-height:1.25;
  box-sizing:border-box;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.05);
}
body[data-dashboard-mode="detail"] .dashEventsSearchInput:focus{
  border-color:rgba(255,30,45,.45);
  background:rgba(255,255,255,.07);
  box-shadow:0 0 0 2px rgba(255,30,45,.2);
}
body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterBtn{
  padding:6px 9px;
  font-size:12px;
  white-space:nowrap;
}
body[data-dashboard-mode="detail"] .dashFilterGroup{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:4px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  background:rgba(255,255,255,.02);
}
body[data-dashboard-mode="detail"] .dashFilterBtn{
  border-color:transparent;
  background:transparent;
  padding:8px 12px;
}
body[data-dashboard-mode="detail"] .dashSection .dashBadge{
  display:none;
}
body[data-dashboard-mode="detail"] .dashFilterBtn.active{
  background:rgba(255,30,45,.22);
  border-color:rgba(255,30,45,.48);
  box-shadow:0 8px 22px rgba(255,30,45,.18);
}

body[data-dashboard-mode="detail"] .list{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:var(--dashDetailListGap);
}
/* Home-Dashboard: Eventlisten — Marketing-Kacheln (Apple-ähnlich) */
.dashPage .dashEventList{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:var(--dashDetailListGap);
  grid-auto-rows:minmax(var(--dashDetailTileHeight), auto);
}
.dashPage .dashEventList > .listItem.dashEventTile{
  position:relative;
  isolation:isolate;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  min-height:var(--dashDetailTileHeight);
  height:auto;
  max-height:none;
  overflow:hidden;
  padding:20px 20px 16px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.14);
  background:
    linear-gradient(155deg, rgba(255,255,255,.09) 0%, rgba(255,255,255,.02) 42%, rgba(0,0,0,.2) 100%),
    rgba(22,22,24,.72);
  backdrop-filter:blur(22px) saturate(1.35);
  -webkit-backdrop-filter:blur(22px) saturate(1.35);
  box-shadow:
    0 18px 44px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.09);
  transition:border-color .22s ease, background .22s ease, transform .2s ease, box-shadow .22s ease;
}
.dashPage .dashEventList > .listItem.dashEventTile:hover{
  border-color:rgba(255,45,58,.55);
  background:
    linear-gradient(155deg, rgba(255,55,65,.14) 0%, rgba(255,255,255,.06) 38%, rgba(0,0,0,.18) 100%),
    rgba(28,28,32,.82);
  transform:translateY(-3px);
  box-shadow:
    0 26px 56px rgba(0,0,0,.5),
    0 0 40px rgba(255,30,45,.12),
    inset 0 1px 0 rgba(255,255,255,.12);
}
/* Status ohne Eyebrow: Badge unten links in der Fußzeile (unter dem Trennstrich), neben Join-Code */
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__statusPill--footer{
  position:static;
  flex:0 1 auto;
  align-self:center;
  max-width:min(52%, 160px);
  padding:4px 11px;
  font-size:10px;
  font-weight:700;
  letter-spacing:.04em;
  border-radius:999px;
  border:1px solid rgba(255,30,45,.42);
  background:rgba(255,30,45,.14);
  color:rgba(255,255,255,.94);
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__bottomMeta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 10px;
  min-width:0;
  flex:1 1 auto;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__titleRow{
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  margin:0 0 8px;
  position:relative;
  z-index:1;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__titleRow .dashEventTile__headline{
  margin:0;
  min-width:0;
  font-weight:650;
  font-size:clamp(17px, 1.35vw, 21px);
  line-height:1.2;
  letter-spacing:-.035em;
  color:rgba(255,255,255,.98);
  white-space:nowrap;
  overflow:visible;
  display:inline-block;
  width:max-content;
  max-width:none;
  text-overflow:clip;
}
/* Meine Teams: Logo freigestellt / Initialen-Kreis links vom Titel */
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__titleRow--withMark{
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:12px;
  overflow:visible;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashMyTeamMarkSlot{
  flex-shrink:0;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__titleCol{
  flex:1 1 auto;
  min-width:0;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__titleCol .dashEventTile__headline{
  display:block;
  width:100%;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashMyTeamMark{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashMyTeamMark--initials{
  width:44px;
  height:44px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.dashPage .dashEventList > .listItem.dashEventTile .dashMyTeamMark__ph{
  font-size:14px;
  font-weight:800;
  letter-spacing:.02em;
  color:rgba(255,255,255,.45);
  user-select:none;
  line-height:1;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashMyTeamMark--asset{
  width:auto;
  min-width:44px;
  max-width:64px;
  height:44px;
  background:none;
  border:none;
  box-shadow:none;
  justify-content:flex-start;
  overflow:visible;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashMyTeamMark__img{
  display:block;
  max-width:64px;
  max-height:44px;
  width:auto;
  height:auto;
  object-fit:contain;
  object-position:left center;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__sheen{
  position:absolute;
  inset:0 0 auto 0;
  height:52%;
  pointer-events:none;
  z-index:0;
  background:
    radial-gradient(120% 90% at 88% -8%, rgba(255,30,45,.28) 0%, transparent 58%),
    radial-gradient(80% 60% at 12% 0%, rgba(255,255,255,.08) 0%, transparent 55%);
  opacity:.95;
}
.dashPage .dashEventList > .listItem.dashEventTile.dashEventTile--hasBanner .dashEventTile__sheen{
  height:42%;
  opacity:.72;
}
/* Zeile unter Eyebrow+Badge: Text links, Banner rechts — unten + zur Textseite, größer */
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__mainRow{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:row;
  align-items:stretch;
  justify-content:space-between;
  gap:12px;
  margin:0 0 14px;
  min-width:0;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__textCol{
  flex:1 1 0;
  min-width:0;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__textCol .dashEventTile__metaBlock{
  margin-bottom:0;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__bannerCol{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:flex-start;
  flex:0 0 auto;
  align-self:stretch;
  width:clamp(152px, 44%, 252px);
  min-width:140px;
  max-width:min(252px, 50%);
  min-height:0;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__mainRow .dashEventTile__banner{
  position:relative;
  z-index:0;
  flex:0 0 auto;
  width:100%;
  max-width:100%;
  aspect-ratio:16 / 9;
  margin:0;
  border-radius:11px;
  overflow:hidden;
  background:rgba(0,0,0,.22);
  border:1px solid rgba(255,255,255,.12);
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__mainRow .dashEventTile__bannerImg{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}
.dashPage .dashEventList > .listItem.dashEventTile.dashEventTile--hasBanner .dashEventTile__top{
  margin-bottom:10px;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__top{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
  min-height:0;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__eyebrow{
  font-size:10px;
  font-weight:650;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255,255,255,.42);
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__statusPill{
  flex-shrink:0;
  max-width:min(48%, 140px);
  padding:4px 11px;
  font-size:10px;
  font-weight:700;
  letter-spacing:.04em;
  border-radius:999px;
  border:1px solid rgba(255,30,45,.42);
  background:rgba(255,30,45,.14);
  color:rgba(255,255,255,.94);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dashPage .dashEventList > .listItem.dashEventTile:hover .dashEventTile__titleRow .dashEventTile__headline{
  color:#fff;
}
.dashPage .dashEventList > .listItem.dashEventTile .goCatGameCard__desc{
  position:relative;
  z-index:1;
  margin:0 0 10px;
  font-size:13px;
  line-height:1.45;
  font-weight:480;
  color:rgba(255,255,255,.52);
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.dashPage .dashEventList > .listItem.dashEventTile .goCatGameCard__desc--preview.dashEventTile__lede{
  color:rgba(255,255,255,.62);
  font-weight:500;
  -webkit-line-clamp:2;
  line-clamp:2;
  min-height:0;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__contextLine{
  position:relative;
  z-index:1;
  margin:0 0 8px;
  font-size:12px;
  line-height:1.45;
  font-weight:560;
  letter-spacing:-.01em;
  color:rgba(255,255,255,.62);
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__metaBlock{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  gap:4px;
  margin:0 0 14px;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__metaBlock .dashEventTile__metaLine{
  margin:0;
  font-size:12px;
  line-height:1.45;
  font-weight:520;
  letter-spacing:-.01em;
  color:rgba(255,255,255,.48);
  white-space:normal;
  overflow:visible;
}
/* Klassenname darf nicht „dot“/„badge“ enthalten — app.css setzt sonst Favicon-Icons (.siteMain [class*="dot"]) */
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__sep{
  margin:0 .28em;
  color:rgba(255,255,255,.28);
  display:inline;
  width:auto;
  height:auto;
  border-radius:0;
  background:none;
  background-image:none;
  box-shadow:none;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__bottom{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:auto;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.1);
  flex-shrink:0;
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__join{
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
  padding:6px 11px;
  line-height:1.2;
  border-radius:999px;
  border-color:rgba(255,255,255,.2);
  background:rgba(255,255,255,.08);
  color:rgba(255,255,255,.88);
}
.dashPage .dashEventList > .listItem.dashEventTile .dashEventTile__cta{
  font-size:13px;
  font-weight:560;
  letter-spacing:-.015em;
  color:rgba(255,255,255,.78);
  white-space:nowrap;
}
.dashPage .dashEventList > .listItem.dashEventTile:hover .dashEventTile__cta{
  color:rgba(255,120,128,.98);
}
.dashPage .dashEventList > .listItem .listItem__right{
  margin-left:auto;
}
.dashPage .dashEventList > .listItem .listItem__right .badge{
  font-size:11px;
  font-weight:900;
  border-color:rgba(255,255,255,.22);
  background:rgba(255,255,255,.11);
}

/* Eventkalender (Dashboard-Detail #calendar) */
.dashPage .dashHead--calendar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px 20px;
  flex-wrap:wrap;
}
.dashPage .dashHead__calendarLeft{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}
.dashPage .dashEventCalendar__toolbar--inHead{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  margin-bottom:0;
  flex:0 0 auto;
  flex-wrap:nowrap;
  gap:10px;
}
.dashPage .dashEventCalendar__toolbar--inHead .dashEventCalendar__monthWrap{
  flex:0 1 auto;
  justify-content:flex-end;
}
.dashPage .dashEventCalendar{
  margin-top:10px;
  padding:18px 20px 22px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.14);
  background:
    linear-gradient(155deg, rgba(255,255,255,.08) 0%, rgba(255,255,255,.02) 42%, rgba(0,0,0,.15) 100%),
    rgba(22,22,24,.72);
  backdrop-filter:blur(22px) saturate(1.35);
  -webkit-backdrop-filter:blur(22px) saturate(1.35);
  box-shadow:
    0 18px 44px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.09);
}
.dashPage .dashEventCalendar__toolbar:not(.dashEventCalendar__toolbar--inHead){
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
  flex-wrap:wrap;
}
.dashPage .dashEventCalendar__navBtn{
  width:40px;
  height:40px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.05);
  color:#fff;
  font-size:22px;
  line-height:1;
  cursor:pointer;
  transition:background .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.dashPage .dashEventCalendar__navBtn:hover{
  background:rgba(255,30,45,.14);
  border-color:rgba(255,60,80,.45);
  box-shadow:0 0 20px rgba(255,30,45,.12);
}
.dashPage .dashEventCalendar__monthWrap{
  display:flex;
  align-items:center;
  gap:14px;
  flex:1 1 auto;
  min-width:0;
  justify-content:center;
}
.dashPage .dashEventsMapSection{
  width:100%;
}
.dashPage .dashEventsMapCanvas{
  width:100%;
  height:min(68vh, 640px);
  min-height:420px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.14);
  overflow:hidden;
  box-shadow:0 18px 44px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.09);
}
.dashPage .dashEventsMapFavicon{
  filter:drop-shadow(0 6px 12px rgba(0,0,0,.34));
}
.dashPage .mapTheme--appleDark .leaflet-tile{
  filter:brightness(0.74) contrast(1.08) saturate(1.06);
}
.dashPage .mapTheme--appleDark::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(22,36,68,.46) 0%, rgba(10,22,46,.54) 100%),
    radial-gradient(120% 90% at 18% 72%, rgba(10,132,140,.18) 0%, rgba(10,132,140,0) 58%),
    radial-gradient(120% 80% at 82% 22%, rgba(72,94,166,.14) 0%, rgba(72,94,166,0) 60%);
  mix-blend-mode:multiply;
}
.dashPage .mapTheme--appleDark::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,0) 28%);
}
.dashPage .dashEventCalendar__monthLabel{
  font-size:clamp(18px,2vw,22px);
  font-weight:800;
  letter-spacing:-.02em;
  color:var(--dashText);
}
.dashPage .dashEventCalendar__yearSelect{
  min-width:88px;
  max-width:120px;
  padding:8px 12px;
  font-weight:700;
  border-radius:12px !important;
}
.dashPage .dashEventCalendar__weekdays{
  display:grid;
  grid-template-columns:repeat(7, minmax(0, 1fr));
  gap:4px;
  margin-bottom:8px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:rgba(255,255,255,.38);
  text-align:center;
}
.dashPage .dashEventCalendar__grid{
  display:grid;
  grid-template-columns:repeat(7, minmax(0, 1fr));
  gap:6px;
}
.dashPage .dashEventCalendar__cell{
  --cal-day-thumb-w: clamp(92px, 56%, 136px);
  --cal-day-thumb-h: calc(var(--cal-day-thumb-w) * 9 / 16);
  min-height:162px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.03);
  padding:8px 7px 10px;
  display:flex;
  flex-direction:column;
  gap:6px;
  position:relative;
  overflow:hidden;
  transition:border-color .15s ease, background .15s ease;
}
.dashPage .dashEventCalendar__cell--hasEvents{
  border-color:rgba(255,255,255,.2);
  background:
    linear-gradient(170deg, rgba(255,255,255,.09) 0%, rgba(255,255,255,.04) 58%, rgba(0,0,0,.12) 100%),
    rgba(255,255,255,.04);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.dashPage .dashEventCalendar__cell--empty{
  background:transparent;
  border-color:transparent;
  min-height:162px;
}
.dashPage .dashEventCalendar__cell--past{
  opacity:.72;
}
.dashPage .dashEventCalendar__cell:hover:not(.dashEventCalendar__cell--empty){
  border-color:rgba(255,255,255,.22);
  background:rgba(255,255,255,.06);
}
.dashPage .dashEventCalendar__dayNum{
  font-size:13px;
  font-weight:800;
  color:rgba(255,255,255,.55);
  line-height:1;
  position:relative;
  z-index:2;
}
.dashPage .dashEventCalendar__evList{
  display:block;
  min-height:0;
  flex:1 1 auto;
  padding-top:0;
  overflow:hidden;
}
.dashPage .dashEventCalendar__daySlide{
  display:none;
  text-decoration:none;
  color:rgba(255,255,255,.94);
  border:0 !important;
  box-shadow:none !important;
  outline:none;
  position:relative;
  min-height:0;
}
.dashPage .dashEventCalendar__daySlide.is-active{
  display:block;
}
.dashPage .dashEventCalendar__daySlide.no-banner{
  padding-top:0;
}
.dashPage .dashEventCalendar__daySlide.has-banner{
  position:static;
}
.dashPage .dashEventCalendar__daySlideThumbWrap{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  border-radius:10px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
}
.dashPage .dashEventCalendar__daySlide.has-banner .dashEventCalendar__daySlideThumbWrap{
  position:absolute;
  top:8px;
  right:8px;
  width:var(--cal-day-thumb-w);
  aspect-ratio:16/9;
  z-index:1;
}
.dashPage .dashEventCalendar__daySlideThumb{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.dashPage .dashEventCalendar__daySlideTitle{
  display:block;
  margin-top:6px;
  font-size:11px;
  font-weight:700;
  line-height:1.25;
  min-width:0;
  white-space:nowrap;
  text-overflow:ellipsis;
  overflow:hidden;
  border:0 !important;
  box-shadow:none !important;
  outline:none;
}
.dashPage .dashEventCalendar__daySlide.has-banner .dashEventCalendar__daySlideTitle{
  position:absolute;
  top:calc(8px + var(--cal-day-thumb-h) + 2px);
  left:8px;
  right:8px;
  margin-top:0;
  width:auto;
  text-align:left;
  z-index:2;
}
.dashPage .dashEventCalendar__daySlide.no-banner .dashEventCalendar__daySlideTitle{
  margin-top:0;
  font-size:12px;
}
.dashPage .dashEventCalendar__daySlide:hover .dashEventCalendar__daySlideTitle{
  text-decoration:underline;
  text-underline-offset:2px;
}
.dashPage .dashEventCalendar__dayNav{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  position:absolute;
  top:24px;
  left:8px;
  right:auto;
  background:transparent;
  border:0;
  border-radius:0;
  padding:0;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  opacity:.5;
  transition:opacity .14s ease;
  box-shadow:none !important;
  z-index:3;
}
.dashPage .dashEventCalendar__cell:hover .dashEventCalendar__dayNav,
.dashPage .dashEventCalendar__cell:focus-within .dashEventCalendar__dayNav{
  opacity:.95;
}
.dashPage .dashEventCalendar__dayNavBtn{
  width:16px;
  height:16px;
  border-radius:6px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  color:rgba(255,255,255,.9);
  line-height:1;
  font-size:11px;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0;
  box-shadow:none !important;
  outline:none;
}
.dashPage .dashEventCalendar__dayNavBtn:hover{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.3);
}
.dashPage .dashEventCalendar__more{
  font-size:10px;
  font-weight:800;
  color:rgba(255,255,255,.4);
}

@media (max-width:900px){
  body[data-dashboard-mode="detail"]:has(#calendar:not([hidden])) .container.section.appContent__inner{
    padding-top: 36px !important;
  }
  /*
    Profil: kein innerer Listen-Scroll wie bei Events/Teams — sonst clippt .dashSection (overflow:hidden).
    Hier .appContent__inner wieder vertikal scrollbar (wie App-Shell vorsieht), statt dashboard-wide hidden.
  */
  body[data-dashboard-mode="detail"]:has(#profile:not([hidden])) .dashPage .container.section.appContent__inner{
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;
    padding-bottom: max(28px, env(safe-area-inset-bottom, 0px)) !important;
  }
  body[data-dashboard-mode="detail"]:has(#profile:not([hidden])) #profile.dashSection:not([hidden]){
    overflow: visible !important;
    min-height: min-content;
  }
  /* Detail-Dashboard Mobil: seitlicher Rand (0 war durch padding:10px 0 0 auf appContent__inner) */
  body[data-dashboard-mode="detail"] .dashPage .container.section.appContent__inner{
    padding-left: max(14px, env(safe-area-inset-left, 0px)) !important;
    padding-right: max(14px, env(safe-area-inset-right, 0px)) !important;
  }
  /* Detail-Dashboard Mobil: keine radialen „Vignette“-Spots (--page-bg), nur ruhiger Verlauf */
  body[data-dashboard-mode="detail"]{
    background: linear-gradient(180deg, #070a0f 0%, #05070b 100%) !important;
    background-attachment: scroll !important;
  }
  /* Shell-Mobile: keine horizontale Tab-Leiste mit Mindestbreite */
  .dashPage .dashSubnav__row{
    min-width:0;
    grid-auto-flow:row;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:8px;
    justify-items:stretch;
  }
  .dashPage .dashSubnav a{
    text-align:center;
    font-size:12px;
    padding:10px 8px;
    min-height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }

  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    grid-template-rows:repeat(4, minmax(48px, 1fr));
    gap:8px;
    padding:0;
    margin-left:0;
    margin-right:0;
    align-items:stretch;
    align-content:stretch;
    width:100%;
    max-width:100%;
    min-width:0;
    min-height:calc(48px * 4 + 24px);
    box-sizing:border-box;
    overflow:visible;
  }
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--pills{
    display:none !important;
  }
  /* Vier identische „Kacheln“: gleicher Rahmen, gleiche Mindesthöhe, Inhalt streckt sich in der Zelle */
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--search,
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--eventsListQuick,
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--calendarQuick,
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--eventsMapQuick,
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--sort,
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--calendarToolbarHost,
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--myEventsCell{
    display:flex !important;
    flex-direction:column;
    justify-content:stretch;
    align-items:stretch;
    min-width:0;
    min-height:0;
    width:100%;
    max-width:100%;
    margin:0;
    padding:0;
    border:1px solid rgba(255,255,255,.14);
    border-radius:14px;
    background:rgba(255,255,255,.06);
    box-shadow:none;
    box-sizing:border-box;
    overflow:hidden;
  }
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--search{
    grid-column:1;
    grid-row:1;
  }
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--eventsListQuick{
    grid-column:2;
    grid-row:1;
  }
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--calendarQuick{
    grid-column:1;
    grid-row:2;
  }
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--eventsMapQuick{
    grid-column:2;
    grid-row:2;
  }
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterGroup--sort{
    grid-column:1 / span 2;
    grid-row:4;
    width:auto;
    min-width:0;
    max-width:100%;
  }
  body[data-dashboard-mode="detail"] #eventsFilterRow[data-events-view="#calendar"] .dashFilterGroup--calendarToolbarHost{
    grid-column:1 / span 2;
    grid-row:4;
    margin-left:0;
  }
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified > .dashFilterGroup--myEventsCell:nth-child(7){
    grid-column:1;
    grid-row:3;
  }
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified > .dashFilterGroup--myEventsCell:nth-child(8){
    grid-column:2;
    grid-row:3;
  }
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashEventsSearchInput,
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterSortSelect{
    flex:1 1 auto;
    width:100%;
    min-width:0;
    height:100%;
    min-height:48px;
    margin:0;
    border:none !important;
    border-radius:13px;
    background:transparent !important;
    box-shadow:none !important;
    box-sizing:border-box;
  }
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashEventsSearchInput:focus,
  body[data-dashboard-mode="detail"] .dashFilterRow--eventsUnified .dashFilterSortSelect:focus{
    outline:none;
    box-shadow:inset 0 0 0 2px rgba(255,30,45,.55) !important;
  }
}

@media (max-width: 980px){
  body[data-dashboard-mode="detail"] .list{
    grid-template-columns:1fr;
  }
  .dashPage .dashEventList{
    grid-template-columns:1fr;
  }
  .dashPage .dashHead--calendar{
    flex-direction:column;
    align-items:stretch;
  }
  .dashPage .dashEventCalendar__toolbar--inHead{
    justify-content:center;
  }
  .dashPage .dashEventCalendar__toolbar--inHead .dashEventCalendar__monthWrap{
    justify-content:center;
  }
  .dashPage .dashEventCalendar__cell{
    min-height:clamp(152px, 38vw, 188px);
    padding:8px 5px 10px;
    gap:5px;
  }
  .dashPage .dashEventCalendar__cell--empty{
    min-height:clamp(152px, 38vw, 188px);
  }
  .dashPage .dashEventCalendar__daySlideTitle{
    font-size:10px;
  }
  .dashPage .dashEventCalendar__cell{
    --cal-day-thumb-w: clamp(78px, 54%, 116px);
  }
  .dashPage .dashEventCalendar__daySlide.no-banner .dashEventCalendar__daySlideTitle{
    font-size:11px;
  }
  .dashPage .dashEventCalendar__dayNav{
    top:22px;
    left:6px;
    gap:4px;
    padding:0;
  }
  .dashPage .dashEventCalendar__dayNavBtn{
    width:16px;
    height:16px;
    font-size:11px;
  }
}

/* ========== Home: Event Control Center ========== */
body[data-dashboard-mode="home"] .dashCC{
  display:grid;
  grid-template-columns:repeat(12, minmax(0, 1fr));
  gap:16px;
  align-items:stretch;
}
body[data-dashboard-mode="home"] .dashCC__card{
  position: relative;
  border:1px solid var(--dashLine);
  border-radius:20px;
  padding:20px 22px;
  background:
    linear-gradient(155deg, rgba(255,255,255,.07) 0%, rgba(255,255,255,.02) 45%, rgba(0,0,0,.12) 100%),
    var(--dashCard);
  box-shadow:0 18px 48px rgba(0,0,0,.35);
  backdrop-filter:blur(18px) saturate(1.2);
  -webkit-backdrop-filter:blur(18px) saturate(1.2);
}
body[data-dashboard-mode="home"] .dashCC__card > *{
  position: relative;
  z-index: 1;
}
body[data-dashboard-mode="home"] .dashCC__cardBanner{
  position: absolute;
  right: 14px;
  top: 12px;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 10px 26px rgba(0,0,0,.32);
  z-index: 0;
  pointer-events: none;
}
body[data-dashboard-mode="home"] .dashCC__cardBanner::after{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(6,10,18,.08), rgba(6,10,18,.28));
}
body[data-dashboard-mode="home"] .dashCC__cardBannerImg{
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
body[data-dashboard-mode="home"] .dashCC__cardBanner--hero{
  width: 272px;
  height: 134px;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
}
body[data-dashboard-mode="home"] .dashCC__cardBanner--recap{
  width: 122px;
  height: 76px;
}
body[data-dashboard-mode="home"] .dashCC__card--hero:has(.dashCC__cardBanner--hero:not([hidden])){
  padding-right: 312px;
}
body[data-dashboard-mode="home"] .dashCC__card--recap:has(.dashCC__cardBanner--recap:not([hidden])){
  padding-right: 150px;
}
body[data-dashboard-mode="home"] .dashCC__card--hero{
  position: relative;
}
body[data-dashboard-mode="home"] .dashCC__card--hero .dashCC__statusPill{
  position: absolute;
  top: 10px;
  right: 12px;
  z-index: 3;
}
body[data-dashboard-mode="home"] .dashCC__cardTitle{
  margin:0 0 10px;
  font-size:13px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:rgba(255,255,255,.55);
}
body[data-dashboard-mode="home"] .dashCC__card--hero{
  grid-column:1 / -1;
  padding:26px 28px 24px;
}
body[data-dashboard-mode="home"] .dashCC__heroTop{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:8px;
}
body[data-dashboard-mode="home"] .dashCC__eyebrow{
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.45);
}
body[data-dashboard-mode="home"] .dashCC__statusPill{
  font-size:11px;
  font-weight:800;
  padding:5px 11px;
  border-radius:999px;
  border:1px solid rgba(255,45,58,.42);
  background:rgba(255,30,45,.14);
  color:#fff;
}
body[data-dashboard-mode="home"] .dashCC__heroTitle{
  margin:0 0 8px;
  font-size:clamp(22px, 3.2vw, 30px);
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.15;
  color:var(--dashText);
}
body[data-dashboard-mode="home"] .dashCC__heroWhen{
  margin:0 0 14px;
  font-size:15px;
  color:rgba(255,255,255,.72);
  line-height:1.45;
}
body[data-dashboard-mode="home"] .dashCC__metrics{
  list-style:none;
  margin:0 0 12px;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:8px 14px;
}
body[data-dashboard-mode="home"] .dashCC__metrics li{
  font-size:13px;
  color:rgba(255,255,255,.78);
}
body[data-dashboard-mode="home"] .dashCC__metrics strong{
  color:#fff;
  font-weight:800;
}
body[data-dashboard-mode="home"] .dashCC__progress{
  margin:0 0 16px;
  font-size:13px;
}
body[data-dashboard-mode="home"] .dashCC__heroCta .btn{
  min-height:48px;
  padding-left:22px;
  padding-right:22px;
  font-weight:850;
  border-radius:14px;
}
body[data-dashboard-mode="home"] .dashCC__card--action{
  grid-column:1 / span 6;
}
body[data-dashboard-mode="home"] .dashCC__lead{
  margin:0 0 14px;
  font-size:14px;
  line-height:1.45;
  color:rgba(255,255,255,.75);
}
body[data-dashboard-mode="home"] .dashCC__joinBlock--compact .dashCC__joinRow{
  max-width:100%;
}
body[data-dashboard-mode="home"] .dashCC__joinBlock--hidden{
  display:none !important;
}
body[data-dashboard-mode="home"] .dashCC__or{
  margin:12px 0;
  font-size:12px;
}
body[data-dashboard-mode="home"] .dashCC__createMain{
  display:inline-flex;
  width:100%;
  justify-content:center;
  align-items:center;
  min-height:48px;
  border-radius:14px;
  font-weight:850;
  text-decoration:none;
}
body[data-dashboard-mode="home"] .dashCC__createMain.btn--ghost{
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.05);
  color:#fff;
}
body[data-dashboard-mode="home"] .dashCC__inlineCta{
  display:block;
  margin-top:12px;
  font-size:13px;
  font-weight:750;
  color:rgba(255,160,168,.95);
  text-decoration:none;
}
body[data-dashboard-mode="home"] .dashCC__inlineCta:hover{
  text-decoration:underline;
}
body[data-dashboard-mode="home"] .dashCC__card--live{
  grid-column:1 / -1;
}
body[data-dashboard-mode="home"] .dashCC__liveLine{
  margin:0 0 8px;
  font-size:14px;
  line-height:1.4;
}
body[data-dashboard-mode="home"] .dashCC__liveBtn{
  margin-top:12px;
}
body[data-dashboard-mode="home"] .dashCC__card--quick{
  grid-column:7 / span 6;
}
body[data-dashboard-mode="home"] .dashCC__quickGrid{
  display:flex;
  flex-direction:column;
  gap:8px;
}
body[data-dashboard-mode="home"] .dashCC__quickItem{
  display:flex;
  align-items:center;
  min-height:44px;
  padding:0 14px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.04);
  color:#fff;
  font-size:14px;
  font-weight:750;
  text-decoration:none;
  transition:border-color .15s ease, background .15s ease;
}
body[data-dashboard-mode="home"] .dashCC__quickItem:hover{
  border-color:rgba(255,45,58,.35);
  background:rgba(255,30,45,.08);
}
body[data-dashboard-mode="home"] .dashCC__card--recap{
  grid-column:1 / -1;
}
body[data-dashboard-mode="home"] .dashCC__recapName{
  margin:0 0 6px;
  font-size:17px;
  font-weight:850;
}
body[data-dashboard-mode="home"] .dashCC__recapMeta{
  margin:0 0 12px;
  font-size:13px;
}
@media (max-width: 960px){
  body[data-dashboard-mode="home"] .dashCC__cardBanner--hero{
    width: min(42vw, 180px);
    height: min(24vw, 98px);
    right: 12px;
  }
  body[data-dashboard-mode="home"] .dashCC__cardBanner--recap{
    width: min(34vw, 130px);
    height: min(20vw, 72px);
    right: 10px;
    top: 10px;
    transform: none;
  }
  body[data-dashboard-mode="home"] .dashCC__card--hero:has(.dashCC__cardBanner--hero:not([hidden])){
    padding-right: min(46vw, 206px) !important;
  }
  body[data-dashboard-mode="home"] .dashCC__card--recap:has(.dashCC__cardBanner--recap:not([hidden])){
    padding-right: min(38vw, 146px) !important;
  }
  body[data-dashboard-mode="home"] .dashCC__card--action,
  body[data-dashboard-mode="home"] .dashCC__card--quick{
    grid-column:1 / -1;
  }
}

/* Desktop: Control Center als „One-Pager“ — kompakter, Recap in einer Zeile mit Action/Quick */
@media (min-width: 961px){
  body[data-dashboard-mode="home"]{
    --dashHomeFrameGap: 10px;
  }
  body[data-dashboard-mode="home"] .appTopbar{
    padding-top:10px;
    padding-bottom:10px;
    min-height:0;
  }
  body[data-dashboard-mode="home"] .appTopbar__title{
    margin:0;
    font-size:clamp(17px, 1.6vw, 22px);
  }
  body[data-dashboard-mode="home"] .appTopbar--dashNextCenter .appTopbar__status{
    margin-top:2px;
    font-size:12px;
    line-height:1.35;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:1;
    overflow:hidden;
    max-width:min(64ch, 58vw);
  }
  body[data-dashboard-mode="home"] .dashCC{
    gap:10px;
    align-items:stretch;
  }
  body[data-dashboard-mode="home"] .dashCC__card{
    padding:12px 14px;
    border-radius:16px;
    box-shadow:0 12px 36px rgba(0,0,0,.32);
  }
  body[data-dashboard-mode="home"] .dashCC__cardTitle{
    margin:0 0 6px;
    font-size:11px;
  }
  body[data-dashboard-mode="home"] .dashCC__card--hero{
    padding:14px 18px 12px;
  }
  body[data-dashboard-mode="home"] .dashCC__heroTop{
    margin-bottom:4px;
  }
  body[data-dashboard-mode="home"] .dashCC__heroTitle{
    margin:0 0 4px;
    font-size:clamp(18px, 2vw, 24px);
    line-height:1.12;
  }
  body[data-dashboard-mode="home"] .dashCC__heroWhen{
    margin:0 0 8px;
    font-size:13px;
    line-height:1.35;
  }
  body[data-dashboard-mode="home"] .dashCC__metrics{
    margin:0 0 6px;
    gap:6px 12px;
  }
  body[data-dashboard-mode="home"] .dashCC__metrics li{
    font-size:12px;
  }
  body[data-dashboard-mode="home"] .dashCC__progress{
    margin:0 0 8px;
    font-size:12px;
    -webkit-line-clamp:2;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  body[data-dashboard-mode="home"] .dashCC__heroCta{
    margin-top:2px;
  }
  body[data-dashboard-mode="home"] .dashCC__heroCta .btn{
    min-height:40px;
    padding-left:18px;
    padding-right:18px;
    border-radius:12px;
    font-size:14px;
  }
  body[data-dashboard-mode="home"] .dashCC__lead{
    margin:0 0 8px;
    font-size:13px;
    line-height:1.38;
  }
  body[data-dashboard-mode="home"] .dashCC__or{
    margin:8px 0;
  }
  body[data-dashboard-mode="home"] .dashCC__createMain{
    min-height:40px;
    border-radius:12px;
    font-size:14px;
  }
  body[data-dashboard-mode="home"] .dashCC__quickGrid{
    gap:6px;
  }
  body[data-dashboard-mode="home"] .dashCC__quickItem{
    min-height:38px;
    padding:0 12px;
    font-size:13px;
    border-radius:10px;
  }
  body[data-dashboard-mode="home"] .dashCC__recapName{
    font-size:15px;
    margin:0 0 4px;
  }
  body[data-dashboard-mode="home"] .dashCC__recapMeta{
    margin:0 0 8px;
    font-size:12px;
  }
  body[data-dashboard-mode="home"] .dashCC__card--recap .btn{
    min-height:36px;
    padding:8px 14px;
    font-size:13px;
  }
  /* Untere Zeile: Action + Quick (+ optional Recap) nebeneinander */
  body[data-dashboard-mode="home"] .dashCC:has(.dashCC__card--recap:not([hidden])) .dashCC__card--action{
    grid-column:1 / span 4;
  }
  body[data-dashboard-mode="home"] .dashCC:has(.dashCC__card--recap:not([hidden])) .dashCC__card--quick{
    grid-column:5 / span 4;
  }
  body[data-dashboard-mode="home"] .dashCC__card--recap:not([hidden]){
    grid-column:9 / span 4;
  }
  /* Wenn Live + Recap vorhanden:
     Zeile 2 bleibt stabil fuer Action/Quick/Recap, Live kommt in Zeile 3. */
  body[data-dashboard-mode="home"] .dashCC:has(.dashCC__card--live:not([hidden])):has(.dashCC__card--recap:not([hidden])) .dashCC__card--action{
    grid-row:2;
  }
  body[data-dashboard-mode="home"] .dashCC:has(.dashCC__card--live:not([hidden])):has(.dashCC__card--recap:not([hidden])) .dashCC__card--quick{
    grid-row:2;
  }
  body[data-dashboard-mode="home"] .dashCC:has(.dashCC__card--live:not([hidden])):has(.dashCC__card--recap:not([hidden])) .dashCC__card--recap:not([hidden]){
    grid-row:2;
  }
  body[data-dashboard-mode="home"] .dashCC:has(.dashCC__card--live:not([hidden])):has(.dashCC__card--recap:not([hidden])) .dashCC__card--live:not([hidden]){
    grid-row:3;
  }
  body[data-dashboard-mode="home"] .dashCC__card--live:not([hidden]){
    padding:10px 14px;
  }
  body[data-dashboard-mode="home"] .dashCC__card--live:not([hidden]) .dashCC__liveLine{
    margin:0 0 4px;
    font-size:13px;
  }
  body[data-dashboard-mode="home"] .dashCC__card--live:not([hidden]) .dashCC__liveBtn{
    margin-top:6px;
  }
}

@media (min-width: 1100px){
  body[data-dashboard-mode="home"] .dashCC__card--live:not([hidden]){
    display:grid;
    grid-template-columns:repeat(3, minmax(0,1fr)) auto;
    grid-template-rows:auto auto;
    column-gap:14px;
    row-gap:4px;
    align-items:start;
  }
  body[data-dashboard-mode="home"] .dashCC__card--live:not([hidden]) .dashCC__cardTitle{
    grid-column:1 / -1;
    margin-bottom:2px;
  }
  body[data-dashboard-mode="home"] .dashCC__card--live:not([hidden]) #dashCCLiveRank{
    grid-column:1;
    grid-row:2;
    margin:0;
  }
  body[data-dashboard-mode="home"] .dashCC__card--live:not([hidden]) #dashCCLiveLast{
    grid-column:2;
    grid-row:2;
    margin:0;
  }
  body[data-dashboard-mode="home"] .dashCC__card--live:not([hidden]) #dashCCLiveNext{
    grid-column:3;
    grid-row:2;
    margin:0;
  }
  body[data-dashboard-mode="home"] .dashCC__card--live:not([hidden]) .dashCC__liveBtn{
    grid-column:4;
    grid-row:2;
    margin:0;
    align-self:center;
    white-space:nowrap;
  }
}