/* ServusPapa Switcher v5 — Basis-Reset */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{margin:0;min-height:100vh}
img{max-width:100%;height:auto}
a{text-decoration:none}
.sp-design-wrapper{min-height:100vh;display:flex;flex-direction:column}
.sp-main{flex:1}

/* ===== Innere Seiten (single/page/category/search/404/index) — design-neutrale Struktur =====
   Farben/Chrome kommen vom aktiven Design (data-design auf <html> + Design-CSS).
   Diese Klassen liefern nur Layout/Grund-Typografie. */
.sp-v5-inner{padding:40px 0}
/* Blogeinträge/Seiten: schmale Breite folgt Customizer (narrowContainerWidth, Default 750px) */
.sp-v5-container{max-width:var(--theme-narrow-container-max-width,760px);margin:0 auto;padding:0 20px}
/* Breite Variante (Customizer "Beitragsstruktur → Normal" / Seiten Default) */
.sp-v5-container-wide{max-width:var(--theme-normal-container-max-width,1200px);margin:0 auto;padding:0 20px}
/* Kategorie/Suche/Archiv/Startseite: normale Breite folgt Customizer (maxSiteWidth, Default 1290px) */
.sp-container {
  max-width: var(--theme-normal-container-max-width, 1100px);
  margin: 0 auto;
  padding: 0 20px;
}
.sp-design72-container {
  max-width: var(--theme-normal-container-max-width, 1060px);
  margin: 0 auto;
  padding: 0 32px;
}
.sp-v5-article-head{margin-bottom:28px}
.sp-v5-title{font-size:2em;font-weight:800;line-height:1.2;margin:0 0 8px}
.sp-v5-meta{font-size:0.85rem;opacity:0.7;margin:0 0 12px}
.sp-v5-desc{font-size:0.95rem;opacity:0.8;margin-top:8px}
.sp-v5-thumb{margin-bottom:24px;border-radius:8px;overflow:hidden}
.sp-v5-thumb img{width:100%;height:auto;display:block}
.sp-v5-content{font-size:1.05rem;line-height:1.75}
.sp-v5-content h2,.sp-v5-content h3,.sp-v5-content h4{margin:1.4em 0 0.5em;line-height:1.3}
.sp-v5-content p{margin:0 0 1.1em}
.sp-v5-content ul,.sp-v5-content ol{margin:0 0 1.2em 1.4em}
.sp-v5-content li{margin:0.3em 0}
.sp-v5-content a{text-decoration:underline}
.sp-v5-content img{border-radius:8px;height:auto}
.sp-v5-content blockquote{border-left:3px solid currentColor;padding:4px 16px;opacity:0.85;margin:1.2em 0}

.sp-v5-post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px}
.sp-v5-card{display:block;border:1px solid currentColor;border-radius:10px;overflow:hidden;opacity:0.95;transition:opacity 0.2s,transform 0.2s}
.sp-v5-card:hover{opacity:1;transform:translateY(-3px)}
.sp-v5-card-thumb img{width:100%;height:auto;display:block}
.sp-v5-card-body{padding:14px 16px}
.sp-v5-card-title{font-size:1.05rem;font-weight:700;margin:0 0 6px;line-height:1.3}
.sp-v5-excerpt{font-size:0.85rem;opacity:0.75;margin:0;line-height:1.5}
.sp-v5-empty{opacity:0.75;padding:20px 0}
.sp-v5-pagination{margin-top:28px}
.sp-v5-pagination .nav-links{display:flex;gap:8px;flex-wrap:wrap}
.sp-v5-pagination a,.sp-v5-pagination span{border:1px solid currentColor;padding:6px 12px;border-radius:6px;font-size:0.85rem}

.sp-v5-404{text-align:center;padding:60px 0}
.sp-v5-404-code{font-size:5em;font-weight:900;line-height:1;opacity:0.9}
.sp-v5-404 .sp-v5-title{margin:8px 0}
.sp-v5-404 p{opacity:0.75;margin-bottom:24px}
.sp-v5-404-btn{display:inline-block;padding:12px 24px;border:2px solid currentColor;border-radius:8px;font-weight:700;transition:opacity 0.2s}
.sp-v5-404-btn:hover{opacity:0.8}

/* ===== GitHub-Style Breadcrumb (Ordnerstruktur, Suchseite) ===== */
.sp-breadcrumb {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  padding: 0.75rem 1rem;
  margin: 0 0 1.5rem;
  border: 1px solid currentColor;
  border-radius: 8px;
  font-size: 0.9rem;
  opacity: 0.95;
}
.sp-breadcrumb .sp-bc-link,
.sp-breadcrumb .sp-bc-current {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.15rem 0.4rem;
  border-radius: 5px;
  text-decoration: none;
  color: inherit;
}
.sp-breadcrumb .sp-bc-link:hover {
  background: currentColor;
  color: inherit;
  filter: brightness(1.2);
}
.sp-breadcrumb .sp-bc-sep {
  opacity: 0.5;
  user-select: none;
}
.sp-breadcrumb .sp-bc-current {
  font-weight: 700;
}
.sp-breadcrumb .sp-bc-icon {
  font-size: 0.95em;
  line-height: 1;
}

/* ===== Post-Karte komplett klickbar (Stretched-Link-Pattern) =====
   Karte = position:relative, Titel-Link = sp-stretched-link (::after deckt Karte ab).
   Andere Links (Weiterlesen, Kategorien) werden per z-index über den Overlay gehoben. */
.sp-card-clickable{position:relative}
.sp-card-clickable .sp-stretched-link::after{content:'';position:absolute;inset:0;z-index:1}
.sp-card-clickable a:not(.sp-stretched-link){position:relative;z-index:2}
