/* ============================================================= */
/* 1. Allgemeine Definitionen für alle Google Adsense Blöcke      */
/* ============================================================= */
ins.adsbygoogle { 
  display: grid !important; 
  grid-template-rows: auto 1fr auto !important; 
  text-align: center !important; 
  margin: 30px auto !important; 
  height: auto !important;      
  max-width: 100% !important;        /* Verhindert das Ausbrechen generell */
  box-sizing: border-box !important; /* Bezieht Padding/Border in die Breite ein */
  text-decoration: none !important;  /* Verhindert Unterstreichungen im gesamten Block */
} 

/* Der Google-eigene Inhalt (Iframe) wird fest in die mittlere Reihe gezwungen */
ins.adsbygoogle > iframe,
ins.adsbygoogle > div {
  grid-row: 2 !important;
  max-width: 100% !important;        /* Zwingt Google-Inhalte in die Containerbreite */
  box-sizing: border-box !important;
}

/* Erzwingt das Wort "Werbung" exakt in der oberen Reihe */ 
ins.adsbygoogle::before { 
  content: "Werbung" !important; 
  grid-row: 1 !important; 
  display: block !important; 
  text-align: center !important; 
  font-family: sans-serif !important; 
  font-size: 11px !important; 
  color: #777 !important; 
  margin-bottom: 12px !important; 
  text-transform: uppercase !important; 
  letter-spacing: 1px !important; 
  border-top: 1px solid #ccc !important; 
  padding-top: 8px !important; 
  text-decoration: none !important;  /* Entfernt die Unterstreichung weltweit oben */
} 

/* Erzwingt das Wort "Werbung Ende" exakt in der unteren Reihe */ 
ins.adsbygoogle::after { 
  content: "Werbung Ende" !important; 
  grid-row: 3 !important; 
  display: block !important; 
  text-align: center !important; 
  font-family: sans-serif !important; 
  font-size: 11px !important; 
  color: #777 !important; 
  margin-top: 12px !important; 
  text-transform: uppercase !important; 
  letter-spacing: 1px !important; 
  border-bottom: 1px solid #ccc !important; 
  padding-bottom: 8px !important; 
  text-decoration: none !important;  /* Entfernt die Unterstreichung weltweit unten */
}

/* ============================================================= */
/* 2. Spezifische Anpassung NUR für Anzeigen in der rechten Sidebar */
/* ============================================================= */
.sidebar-right ins.adsbygoogle,
#sidebar-right ins.adsbygoogle,
[class*="sidebar-right"] ins.adsbygoogle {
  display: grid !important;          /* Grid bleibt aktiv für korrekte ::before/::after Reihenfolge */
  width: 100% !important;            /* Nutzt exakt die Breite der Sidebar */
  max-width: 100% !important;        
  min-height: 250px !important;    
  height: auto !important;           
  overflow: hidden !important;       /* Schneidet unkorrigierbare, zu breite Werbebanner sauber ab */
}

/* Zwingt alle Kind-Elemente und iFrames von Google in der Sidebar auf maximale Breite */
.sidebar-right ins.adsbygoogle iframe,
#sidebar-right ins.adsbygoogle iframe,
[class*="sidebar-right"] ins.adsbygoogle iframe,
.sidebar-right ins.adsbygoogle div,
#sidebar-right ins.adsbygoogle div,
[class*="sidebar-right"] ins.adsbygoogle div {
  max-width: 100% !important;        
  width: 100% !important;
  box-sizing: border-box !important;
}

.sidebar-right ins.adsbygoogle::before,
#sidebar-right ins.adsbygoogle::before,
[class*="sidebar-right"] ins.adsbygoogle::before {
  grid-row: 1 !important;            
  text-decoration: none !important; 
  display: block !important;
}

.sidebar-right ins.adsbygoogle::after,
#sidebar-right ins.adsbygoogle::after,
[class*="sidebar-right"] ins.adsbygoogle::after {
  grid-row: 3 !important;            
  position: relative !important;   
  margin-top: 15px !important;     
  text-decoration: none !important; 
  display: block !important;
}