
/* =========================================================
   v39.0 – Mobile UX Cleanup
   Fokus: Dashboard + öffentliche Konkurrenzseite
   ========================================================= */

@media(max-width:700px){
  .app main{
    padding:10px 10px calc(116px + env(safe-area-inset-bottom)) !important;
  }

  .dashboardPage,
  .publicCompetitionsPage{
    display:grid;
    gap:12px;
  }

  .dashboardPage > *,
  .publicCompetitionsPage > *{
    margin-top:0 !important;
    margin-bottom:0 !important;
  }

  .card{
    padding:15px !important;
    border-radius:19px !important;
    box-shadow:0 7px 20px rgba(16,35,58,.065) !important;
  }

  .cardHeader{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:9px !important;
    padding-bottom:9px !important;
    margin-bottom:11px !important;
  }

  .card h2{
    font-size:18px !important;
    line-height:1.18 !important;
  }

  /* Dashboard Hero: kompakt, klare Priorität */
  .dashboardPage .hero{
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-template-areas:"content" "actions" !important;
    gap:12px !important;
    padding:18px 16px !important;
    border-radius:21px !important;
  }

  .dashboardPage .heroLogoWrap{
    display:none !important;
  }

  .dashboardPage .heroContent{
    grid-area:content !important;
  }

  .dashboardPage .eyebrow{
    font-size:10px !important;
    margin:0 0 4px !important;
  }

  .dashboardPage .hero h1{
    font-size:27px !important;
    line-height:1.03 !important;
    margin:0 0 7px !important;
  }

  .dashboardPage .heroContent > p:not(.eyebrow){
    font-size:12.5px !important;
    line-height:1.4 !important;
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    margin:0 !important;
  }

  .dashboardPage .heroMeta{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:6px !important;
    margin-top:11px !important;
  }

  .dashboardPage .heroMeta > span{
    width:100% !important;
    min-height:34px !important;
    padding:7px 8px !important;
    border-radius:10px !important;
    font-size:10.5px !important;
    line-height:1.2 !important;
  }

  .dashboardPage .heroMeta > span svg{
    width:13px !important;
    height:13px !important;
  }

  .dashboardPage .tournamentLiveStatus{
    grid-column:1 / -1 !important;
    min-height:0 !important;
    padding:8px 10px !important;
    border-radius:11px !important;
  }

  .dashboardPage .tournamentLiveTop{
    margin-bottom:5px !important;
  }

  .dashboardPage .tournamentLiveLabel,
  .dashboardPage .tournamentLiveTop b,
  .dashboardPage .tournamentLiveMeta{
    font-size:10.5px !important;
  }

  .dashboardPage .tournamentProgressTrack{
    height:5px !important;
  }

  .dashboardPage .heroActions{
    grid-area:actions !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:7px !important;
    margin:0 !important;
  }

  .dashboardPage .heroActions .primary,
  .dashboardPage .heroActions .secondary{
    min-height:44px !important;
    padding:9px 10px !important;
    font-size:13px !important;
    border-radius:13px !important;
  }

  /* Match der Woche etwas kompakter */
  .matchOfWeekNotice{
    border-radius:19px !important;
  }

  .matchOfWeekContent{
    padding:14px !important;
    gap:9px !important;
  }

  .matchOfWeekTopline span{
    padding:5px 8px !important;
    font-size:9.5px !important;
  }

  .matchOfWeekMain{
    gap:8px !important;
  }

  .matchOfWeekMain h2{
    font-size:18px !important;
    margin:4px 0 2px !important;
  }

  .matchOfWeekMain p,
  .matchOfWeekHint{
    font-size:10.5px !important;
  }

  /* Dashboard-Karten klarer */
  .dashboardOverviewGrid{
    gap:12px !important;
  }

  .dashboardPlayerTools .toolIntro{
    font-size:11.5px !important;
    margin-bottom:9px !important;
  }

  .personalDashboardSummary{
    gap:7px !important;
    margin-bottom:10px !important;
  }

  .personalWelcome,
  .personalNextMatch{
    padding:10px !important;
    border-radius:13px !important;
  }

  .playerSearchBox input{
    min-height:48px !important;
    border-radius:13px !important;
  }

  .favoriteHeader{
    margin:10px 0 7px !important;
  }

  /* Nächste Spiele: vertikale Liste statt Wischen */
  .upcomingMatchesDashboard{
    max-width:none !important;
  }

  .upcomingMatchesDashboard .upcomingIntro{
    margin:0 0 9px !important;
    font-size:11.5px !important;
  }

  .upcomingMatchGrid{
    display:grid !important;
    grid-template-columns:1fr !important;
    overflow:visible !important;
    gap:8px !important;
    padding:0 !important;
  }

  .upcomingMatchCard{
    min-width:0 !important;
    width:100% !important;
    padding:12px !important;
    border-radius:15px !important;
    box-shadow:none !important;
  }

  .upcomingMatchCard > div:first-child{
    margin-bottom:5px !important;
  }

  .upcomingMatchCard h3{
    margin:0 0 8px !important;
    font-size:14px !important;
  }

  .upcomingMatchCard .scheduledBadge{
    width:100% !important;
    justify-content:flex-start !important;
    border-radius:10px !important;
  }

  .v39UpcomingHidden{
    display:none !important;
  }

  .v39UpcomingToggle{
    width:100%;
    min-height:44px;
    margin-top:9px;
    border:1px solid #d4e2db;
    border-radius:12px;
    background:#f4f8f6;
    color:#0b5f4b;
    font:inherit;
    font-size:12px;
    font-weight:900;
    cursor:pointer;
  }

  /* Eingeklappte Bereiche nur als klare Navigationszeile */
  .dashboardCompetitionsCard:has(.dashboardCollapseBtn.collapsed),
  .dashboardResultsCard:has(.dashboardCollapseBtn.collapsed){
    padding:12px 14px !important;
  }

  .dashboardCompetitionsCard:has(.dashboardCollapseBtn.collapsed) .cardHeader,
  .dashboardResultsCard:has(.dashboardCollapseBtn.collapsed) .cardHeader{
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
  }

  .dashboardCollapseBtn{
    min-height:38px !important;
    padding:7px 10px !important;
    border-radius:11px !important;
  }

  /* Konkurrenzseite: nur das Wesentliche oben */
  .publicCompetitionsPage > .pageHeader{
    margin:0 2px !important;
  }

  .publicCompetitionsPage > .pageHeader h1{
    font-size:24px !important;
    margin:0 !important;
  }

  .publicCompetitionsPage > .pageHeader p{
    display:none !important;
  }

  /* Auswahl als ein großer Selector */
  .competitionSelectorCard{
    padding:12px !important;
  }

  .competitionSelectorCard .cardHeader{
    display:none !important;
  }

  .competitionSelectorCard .mobileCompetitionSelect{
    display:block !important;
    margin:0 !important;
  }

  .competitionSelectorCard .publicCompetitionSelector{
    display:none !important;
  }

  .competitionSelectorCard .field{
    gap:5px !important;
  }

  .competitionSelectorCard .field > span{
    font-size:10px !important;
    text-transform:uppercase !important;
    letter-spacing:.06em !important;
    color:#69786f !important;
  }

  .competitionSelectorCard select{
    min-height:52px !important;
    padding:11px 13px !important;
    border-radius:13px !important;
    font-size:15px !important;
    font-weight:900 !important;
    background:#fff !important;
  }

  /* Kennzahlen als drei kompakte Kacheln – ohne horizontalen Scroll */
  .publicCompetitionsPage .summaryCards{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px !important;
    overflow:visible !important;
    padding:0 !important;
  }

  .publicCompetitionsPage .summaryCards > .card{
    flex:none !important;
    min-width:0 !important;
    width:auto !important;
    padding:9px 7px !important;
    margin:0 !important;
    border-radius:13px !important;
    box-shadow:none !important;
  }

  .publicCompetitionsPage .summaryCards .cardHeader{
    display:block !important;
    padding:0 !important;
    margin:0 0 5px !important;
    border:0 !important;
  }

  .publicCompetitionsPage .summaryCards .card h2{
    font-size:10px !important;
    line-height:1.1 !important;
  }

  .publicCompetitionsPage .summaryCards .bigNumber{
    font-size:22px !important;
  }

  .publicCompetitionsPage .summaryCards p{
    display:none !important;
  }

  .publicCompetitionsPage .summaryCards .phaseDeadlineCard{
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }

  .publicCompetitionsPage .summaryCards .phaseDeadlineCard small{
    display:none !important;
  }

  .publicCompetitionsPage .summaryCards .phaseDeadlineCard b{
    font-size:11px !important;
    line-height:1.2 !important;
  }

  .publicCompetitionsPage .summaryCards .phaseDeadlineCard span{
    font-size:9px !important;
  }

  /* Gruppenphase | KO-Phase: immer klar sichtbar */
  .publicCompetitionsPage .publicPhaseTabsFixed,
  .publicCompetitionsPage .phaseSwitch,
  .publicCompetitionsPage .viewTabs{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    width:100% !important;
    max-width:none !important;
    overflow:visible !important;
    gap:4px !important;
    padding:4px !important;
    border-radius:14px !important;
    background:#eef4f1 !important;
    border:1px solid #dbe6e0 !important;
  }

  .publicCompetitionsPage .cardHeader:has(.viewTabs){
    display:grid !important;
    grid-template-columns:1fr !important;
    align-items:stretch !important;
    gap:8px !important;
  }

  .publicCompetitionsPage .cardHeader:has(.viewTabs) h2{
    font-size:16px !important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  .publicCompetitionsPage .viewTabs button{
    min-width:0 !important;
    width:100% !important;
    min-height:48px !important;
    padding:10px 6px !important;
    margin:0 !important;
    border-radius:10px !important;
    justify-content:center !important;
    white-space:nowrap !important;
    font-size:12px !important;
    font-weight:850 !important;
  }

  .publicCompetitionsPage .viewTabs button.active{
    background:#0b6b50 !important;
    color:#fff !important;
    box-shadow:0 5px 14px rgba(11,107,80,.18) !important;
  }

  .groupFilterRow{
    margin:0 0 10px !important;
  }

  .groupFilterRow select{
    min-height:48px !important;
    font-size:14px !important;
  }

  .qualificationNotice{
    padding:10px 11px !important;
    border-radius:12px !important;
    margin:8px 0 12px !important;
  }

  .qualificationNotice b{
    font-size:11px !important;
  }

  .qualificationNotice span{
    font-size:10.5px !important;
    line-height:1.4 !important;
  }

  /* Tabellen: nur mobile Kerninformationen zeigen */
  .standingsBlock .tableWrap{
    margin:0 !important;
    overflow-x:auto !important;
  }

  .standingsBlock th,
  .standingsBlock td{
    padding:8px 6px !important;
    font-size:11px !important;
    white-space:nowrap;
  }

  .standingsBlock th:nth-child(5),
  .standingsBlock td:nth-child(5),
  .standingsBlock th:nth-child(8),
  .standingsBlock td:nth-child(8),
  .standingsBlock th:nth-child(9),
  .standingsBlock td:nth-child(9){
    display:none !important;
  }

  .standingsBlock th:nth-child(2),
  .standingsBlock td:nth-child(2){
    min-width:125px;
  }

  /* Mobile Spielkarten ruhiger */
  .mobileMatchCards{
    gap:8px !important;
  }

  .mobileMatchCard{
    padding:11px 12px !important;
    border-radius:15px !important;
    box-shadow:none !important;
  }

  .mobileMatchPlayer,
  .mobileMatchPlayerText{
    font-size:14px !important;
  }

  /* Bottom-Navigation: etwas ruhiger */
  .mobileBottomNav{
    left:8px !important;
    right:8px !important;
    bottom:calc(7px + env(safe-area-inset-bottom)) !important;
    padding:6px !important;
    border-radius:21px !important;
  }

  .mobileBottomNav button{
    min-height:58px !important;
    border-radius:15px !important;
    font-size:10.5px !important;
    gap:4px !important;
  }

  .mobileBottomNav button svg{
    width:22px !important;
    height:22px !important;
  }
}

@media(max-width:380px){
  .publicCompetitionsPage .summaryCards{
    gap:4px !important;
  }

  .publicCompetitionsPage .summaryCards > .card{
    padding:8px 5px !important;
  }

  .publicCompetitionsPage .summaryCards .card h2{
    font-size:9px !important;
  }

  .publicCompetitionsPage .viewTabs button{
    font-size:11px !important;
  }
}


/* v39.1 – geplante Spiele: 3 + jeweils 5 weitere, nach Datum gruppiert */
@media(max-width:700px){
  .upcomingMatchGrid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:8px !important;
  }

  .v391UpcomingHidden{
    display:none !important;
  }

  .v391DateGroup{
    grid-column:1 / -1;
    display:flex;
    align-items:center;
    gap:9px;
    margin:5px 0 -1px;
    color:#65756d;
  }

  .v391DateGroup:first-child{
    margin-top:0;
  }

  .v391DateGroup span{
    flex:0 0 auto;
    font-size:10.5px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.055em;
  }

  .v391DateGroup::after{
    content:"";
    height:1px;
    flex:1 1 auto;
    background:#e2eae6;
  }

  .v391UpcomingFooter{
    display:grid;
    grid-template-columns:1fr;
    gap:7px;
    margin-top:10px;
  }

  .v391UpcomingCount{
    text-align:center;
    font-size:10.5px;
    font-weight:800;
    color:#7a8881;
  }

  .v391UpcomingToggle{
    width:100%;
    min-height:46px;
    padding:9px 12px;
    border:1px solid #d4e2db;
    border-radius:13px;
    background:#f4f8f6;
    color:#0b5f4b;
    font:inherit;
    font-size:12px;
    font-weight:900;
    cursor:pointer;
  }

  .v391UpcomingToggle:active{
    transform:scale(.985);
  }
}


/* =========================================================
   v39.2 – Dashboard Sheets (nur mobile)
   ========================================================= */
@media(max-width:700px){
  .v392Backdrop{
    position:fixed;
    inset:0;
    background:rgba(15,23,42,.34);
    backdrop-filter:blur(4px);
    -webkit-backdrop-filter:blur(4px);
    opacity:0;
    pointer-events:none;
    transition:opacity .22s ease;
    z-index:1190;
  }

  .v392Backdrop.active{
    opacity:1;
    pointer-events:auto;
  }

  html.v392SheetOpenRoot,
  body.v392SheetOpen{
    overflow:hidden;
  }

  .dashboardPage .v392SheetCard{
    position:relative;
  }

  .dashboardPage .v392SheetCard .v392Launcher{
    width:100%;
    display:grid;
    grid-template-columns:50px minmax(0,1fr) auto;
    align-items:center;
    gap:12px;
    padding:14px 14px;
    border:1px solid #d8e5df;
    border-radius:18px;
    background:linear-gradient(145deg,#ffffff,#f4f8f6 80%);
    box-shadow:0 10px 24px rgba(6,43,69,.07);
    color:#13392f;
    text-align:left;
    font:inherit;
    cursor:pointer;
  }

  .dashboardPage .v392SheetCard .v392Launcher:active{
    transform:scale(.988);
  }

  .dashboardPage .v392SheetCard .v392LauncherIcon{
    width:50px;
    height:50px;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:24px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
  }

  .dashboardPage .v392SheetCard--upcoming .v392LauncherIcon{
    background:linear-gradient(145deg,#e3f3ee,#f7fbf9);
  }

  .dashboardPage .v392SheetCard--competitions .v392LauncherIcon{
    background:linear-gradient(145deg,#ebefff,#f7f8ff);
  }

  .dashboardPage .v392SheetCard--results .v392LauncherIcon{
    background:linear-gradient(145deg,#e8f6ec,#f9fcfa);
  }

  .dashboardPage .v392SheetCard .v392LauncherText{
    min-width:0;
    display:grid;
    gap:4px;
  }

  .dashboardPage .v392SheetCard .v392LauncherEyebrow{
    color:#74847d;
    text-transform:uppercase;
    letter-spacing:.05em;
    font-size:10px;
    font-weight:900;
  }

  .dashboardPage .v392SheetCard .v392LauncherTitle{
    color:#0b2f25;
    font-size:15px;
    font-weight:900;
    line-height:1.25;
  }

  .dashboardPage .v392SheetCard .v392LauncherDesc{
    color:#66756f;
    font-size:12px;
    line-height:1.35;
  }

  .dashboardPage .v392SheetCard .v392LauncherMeta{
    display:grid;
    justify-items:end;
    gap:8px;
  }

  .dashboardPage .v392SheetCard .v392LauncherChip{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:0 10px;
    border-radius:999px;
    background:#0d6a53;
    color:#fff;
    font-size:11px;
    font-weight:900;
    white-space:nowrap;
    box-shadow:0 6px 16px rgba(13,106,83,.2);
  }

  .dashboardPage .v392SheetCard .v392LauncherArrow{
    color:#0d6a53;
    font-size:22px;
    font-weight:900;
    line-height:1;
  }

  .dashboardPage .v392SheetCard:not(.v392Open) .v392SheetBodyNode{
    display:none !important;
  }

  .dashboardPage .v392SheetCard .v392CloseBtn{
    display:none;
  }

  .dashboardPage .v392SheetCard.v392Open{
    position:fixed !important;
    left:10px;
    right:10px;
    bottom:0;
    max-height:84svh;
    margin:0 !important;
    z-index:1200;
    overflow:auto;
    border-radius:24px 24px 0 0;
    box-shadow:0 -10px 34px rgba(6,43,69,.18);
    padding-bottom:calc(16px + env(safe-area-inset-bottom));
  }

  .dashboardPage .v392SheetCard.v392Open .v392Launcher{
    display:none !important;
  }

  .dashboardPage .v392SheetCard.v392Open .cardHeader{
    position:sticky;
    top:0;
    z-index:2;
    margin:-2px -2px 14px;
    padding:16px 16px 12px;
    background:linear-gradient(180deg,#fff 0%,#f8fbf9 100%);
    border-bottom:1px solid #e5ece8;
    border-radius:24px 24px 0 0;
    box-shadow:0 8px 18px rgba(6,43,69,.05);
  }

  .dashboardPage .v392SheetCard.v392Open .cardHeader h2{
    font-size:18px;
  }

  .dashboardPage .v392SheetCard.v392Open .v392CloseBtn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:0 12px;
    margin-left:8px;
    border:1px solid #d6e2dc;
    border-radius:999px;
    background:#fff;
    color:#0b5f4b;
    font:inherit;
    font-size:12px;
    font-weight:900;
  }

  .dashboardPage .v392SheetCard.v392Open .v392SheetBodyNode{
    display:block !important;
  }

  .dashboardPage .v392SheetCard.v392Open .v392SheetBodyNode.scoreCardList,
  .dashboardPage .v392SheetCard.v392Open .v392SheetBodyNode.competitionList,
  .dashboardPage .v392SheetCard.v392Open .v392SheetBodyNode.upcomingMatchGrid{
    display:grid !important;
  }

  .dashboardPage .v392SheetCard.v392Open .dashboardInfoBadge{
    font-size:11px;
    padding:7px 10px;
  }
}


/* =========================================================
   v39.3 – Fix Dashboard Sheets
   ========================================================= */
@media(max-width:700px){
  .v392Backdrop{
    display:none !important;
  }

  .v393Backdrop{
    position:fixed;
    inset:0;
    z-index:2190;
    opacity:0;
    pointer-events:none;
    background:rgba(8,24,36,.42);
    backdrop-filter:blur(4px);
    -webkit-backdrop-filter:blur(4px);
    transition:opacity .18s ease;
  }

  .v393Backdrop.active{
    opacity:1;
    pointer-events:auto;
  }

  html.v393SheetOpenRoot,
  body.v393SheetOpen{
    overflow:hidden !important;
  }

  /* Wichtig: die bestehende Seitenanimation setzt transform auf das
     Dashboard und würde position:fixed sonst relativ zur Seite machen. */
  html.v393SheetOpenRoot .dashboardPage{
    animation:none !important;
    transform:none !important;
  }

  html.v393SheetOpenRoot .dashboardOverviewGrid{
    transform:none !important;
  }

  .dashboardPage .v393SheetCard:not(.v393Open){
    height:auto !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    overflow:visible !important;
  }

  /* Geschlossen gibt es NUR die neue Kachel – keine zweite
     Auf-/Zuklappmöglichkeit und keinen Inhalt darunter. */
  .dashboardPage .v393SheetCard:not(.v393Open) > .cardHeader{
    display:none !important;
  }

  .dashboardPage .v393SheetCard:not(.v393Open) > *:not(.cardHeader):not(.v393Launcher){
    display:none !important;
  }

  .dashboardPage .v393Launcher{
    width:100%;
    min-height:92px;
    display:grid;
    grid-template-columns:52px minmax(0,1fr) 28px;
    align-items:center;
    gap:12px;
    padding:14px;
    border:1px solid #d7e4de;
    border-radius:19px;
    background:
      radial-gradient(circle at 90% 10%,rgba(185,237,143,.22),transparent 34%),
      linear-gradient(145deg,#fff,#f3f8f5);
    color:#102f27;
    box-shadow:0 10px 24px rgba(6,43,69,.075);
    text-align:left;
    font:inherit;
    cursor:pointer;
  }

  .dashboardPage .v393Launcher:active{
    transform:scale(.988);
  }

  .dashboardPage .v393LauncherIcon{
    width:52px;
    height:52px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:16px;
    background:#e9f5ef;
    color:#0b6b50;
    font-size:23px;
    font-weight:1000;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
  }

  .dashboardPage .v393SheetCard--competitions .v393LauncherIcon{
    background:#f0effc;
  }

  .dashboardPage .v393SheetCard--results .v393LauncherIcon{
    background:#eaf7ee;
  }

  .dashboardPage .v393LauncherText{
    min-width:0;
    display:grid;
    gap:3px;
  }

  .dashboardPage .v393LauncherEyebrow{
    color:#77867f;
    font-size:9.5px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.06em;
  }

  .dashboardPage .v393LauncherTitle{
    color:#0e3026;
    font-size:15px;
    line-height:1.2;
    font-weight:950;
  }

  .dashboardPage .v393LauncherDesc{
    color:#687871;
    font-size:11.5px;
    line-height:1.32;
  }

  .dashboardPage .v393LauncherArrow{
    width:28px;
    height:28px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:#0b6b50;
    color:#fff;
    font-size:21px;
    font-weight:900;
    box-shadow:0 5px 12px rgba(11,107,80,.2);
  }

  /* Das alte React-Ausklappen wird nur noch intern verwendet. */
  .dashboardPage .v393SheetCard .dashboardCollapseBtn{
    display:none !important;
  }

  .dashboardPage .v393SheetCard .v393CloseBtn{
    display:none;
  }

  /* Bottom Sheet */
  .dashboardPage .v393SheetCard.v393Open{
    position:fixed !important;
    left:8px !important;
    right:8px !important;
    bottom:0 !important;
    top:auto !important;
    z-index:2200 !important;
    width:auto !important;
    height:auto !important;
    max-height:86svh !important;
    margin:0 !important;
    padding:0 14px calc(16px + env(safe-area-inset-bottom)) !important;
    overflow:auto !important;
    overscroll-behavior:contain;
    background:#fff !important;
    border:1px solid #dce6e1 !important;
    border-bottom:0 !important;
    border-radius:25px 25px 0 0 !important;
    box-shadow:0 -18px 55px rgba(5,31,45,.26) !important;
  }

  .dashboardPage .v393SheetCard.v393Open > .v393Launcher{
    display:none !important;
  }

  .dashboardPage .v393SheetCard.v393Open > .cardHeader{
    position:sticky !important;
    top:0 !important;
    z-index:5 !important;
    display:flex !important;
    margin:0 -14px 14px !important;
    padding:16px 14px 12px !important;
    background:rgba(255,255,255,.97) !important;
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
    border-bottom:1px solid #e5ece8 !important;
    border-radius:25px 25px 0 0 !important;
  }

  .dashboardPage .v393SheetCard.v393Open > .cardHeader::before{
    content:"";
    position:absolute;
    top:6px;
    left:50%;
    width:38px;
    height:4px;
    border-radius:999px;
    background:#d5ded9;
    transform:translateX(-50%);
  }

  .dashboardPage .v393SheetCard.v393Open > .cardHeader h2{
    padding-top:4px;
    font-size:18px !important;
  }

  .dashboardPage .v393SheetCard.v393Open .v393CloseBtn{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    min-height:34px;
    margin-left:auto;
    padding:0 11px;
    border:1px solid #d5e1db;
    border-radius:999px;
    background:#f7faf8;
    color:#0b5f4b;
    font:inherit;
    font-size:11.5px;
    font-weight:900;
  }

  /* Im offenen Sheet müssen alle vom React-Card-Body erzeugten
     Elemente sichtbar bleiben. */
  .dashboardPage .v393SheetCard.v393Open > *:not(.v393Launcher){
    visibility:visible !important;
  }

  .dashboardPage .v393SheetCard.v393Open > .upcomingIntro,
  .dashboardPage .v393SheetCard.v393Open > .upcomingMatchGrid,
  .dashboardPage .v393SheetCard.v393Open > .competitionList,
  .dashboardPage .v393SheetCard.v393Open > .scoreCardList,
  .dashboardPage .v393SheetCard.v393Open > .v391UpcomingFooter,
  .dashboardPage .v393SheetCard.v393Open > .empty{
    display:block !important;
  }

  .dashboardPage .v393SheetCard.v393Open > .upcomingMatchGrid,
  .dashboardPage .v393SheetCard.v393Open > .competitionList,
  .dashboardPage .v393SheetCard.v393Open > .scoreCardList{
    display:grid !important;
  }

  .dashboardPage .v393SheetCard.v393Open .upcomingIntro{
    margin:0 0 10px !important;
    color:#6d7b75;
    font-size:11.5px !important;
  }

  /* Im Sheet dürfen alle geplanten Spiele scrollen; v39.1 gruppiert
     sie nach Datum und versteckt hier keine weiteren Termine. */
  .dashboardPage .v393SheetCard.v393Open .v391UpcomingHidden{
    display:block !important;
  }

  .dashboardPage .v393SheetCard.v393Open .v391UpcomingFooter{
    margin-bottom:4px;
  }

  .dashboardPage .v393SheetCard.v393Open .v391UpcomingToggle{
    display:none !important;
  }

  .dashboardPage .v393SheetCard.v393Open .dashboardCompetition,
  .dashboardPage .v393SheetCard.v393Open .scoreCard,
  .dashboardPage .v393SheetCard.v393Open .upcomingMatchCard{
    box-shadow:none !important;
  }
}


/* v39.4 – Sicherheit: Dashboard-Sheets niemals auf Desktop anzeigen */
@media(min-width:701px){
  .v392Backdrop,
  .v393Backdrop,
  .v392Launcher,
  .v392CloseBtn,
  .v393Launcher,
  .v393CloseBtn{
    display:none !important;
  }

  html.v392SheetOpenRoot,
  html.v393SheetOpenRoot,
  body.v392SheetOpen,
  body.v393SheetOpen{
    overflow:auto !important;
  }
}
