/*
Theme Name: Wollwohlig
Author: Wollwohlig
Version: 0.4.3-rc4
Text Domain: wollwohlig-theme
Description: Minimal-Theme für Wollwohlig.de (v0.1) – fokus auf klare Lesbarkeit, Icons und Customizer-Start.
*/

body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;color:#111827;background:#f8fafc}
a{color:inherit}
.site-header{padding:18px 0;border-bottom:1px solid #e5e7eb;background:#fff}
.container{max-width:980px;margin:0 auto;padding:0 18px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand svg{width:34px;height:34px}
.brand-title{font-weight:800;font-size:20px}
.nav{margin-top:10px;display:flex;gap:10px;flex-wrap:wrap}
.nav a{padding:8px 10px;border-radius:999px;border:1px solid #e5e7eb;text-decoration:none;background:#fff}
.nav a:hover{border-color:#cbd5e1}
.main{padding:22px 0}
.site-footer{border-top:1px solid #e5e7eb;background:#fff;padding:18px 0;margin-top:26px;color:#6b7280;font-size:14px}
/* v0.1.2: Header/Footer Layout */
:root{
  --ww-bg: #f6f3ef;
  --ww-paper: #ffffff;
  --ww-ink: #2e2e2e;
  --ww-muted: #6b6b6b;
  --ww-line: #e6ded4;
  --ww-accent: #6a7a64;
}
body{ background: var(--ww-bg); color: var(--ww-ink); }
a{ color: var(--ww-accent); }
a:hover{ opacity: .9; }

.ww-header{
  background: linear-gradient(180deg,#efe7dc,#e9e2d8);
  border-bottom: 1px solid var(--ww-line);
}
.ww-header-inner{
  max-width: 1080px;
  margin: 0 auto;
  padding: 16px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 14px;
}
.ww-brand{ display:flex; flex-direction:column; gap: 3px; }
.ww-brand-name{ font-size: 26px; letter-spacing: .06em; font-weight: 700; }
.ww-brand-tag{ font-size: 13px; color: var(--ww-muted); }

.ww-nav{ display:flex; flex-wrap:wrap; gap: 12px; }
.ww-nav a{ text-decoration:none; color: var(--ww-ink); font-weight: 500; }
.ww-nav a:hover{ text-decoration: underline; }

.ww-wrap{
  max-width: 1080px;
  margin: 0 auto;
  padding: 18px 14px 0;
}
.ww-content{
  background: var(--ww-paper);
  border: 1px solid var(--ww-line);
  border-radius: 16px;
  padding: 18px;
}

.ww-footer{
  margin-top: 26px;
  background: #e9e2d8;
  border-top: 1px solid var(--ww-line);
  padding: 22px 14px;
}
.ww-footer-inner{
  max-width: 1080px;
  margin: 0 auto;
  display:flex;
  flex-wrap:wrap;
  gap: 10px;
  align-items:center;
  justify-content:space-between;
  font-size: 13px;
  color: var(--ww-muted);
}
.ww-footer-links a{
  color: var(--ww-ink);
  text-decoration:none;
  margin-right: 10px;
}
.ww-footer-links a:hover{ text-decoration: underline; }

@media (max-width: 760px){
  .ww-header-inner{ flex-direction:column; align-items:flex-start; }
  .ww-wrap{ padding-top: 14px; }
  .ww-content{ padding: 16px; }
}
/* v0.1.3 Startseite */
.ww-hero{
  background:#ffffff;
  border:1px solid var(--ww-line);
  border-radius:18px;
  padding:28px 22px;
  margin-bottom:26px;
}
.ww-hero h1{
  margin:0 0 8px;
  font-size:32px;
}
.ww-hero p{
  margin:0 0 18px;
  color:var(--ww-muted);
}
.ww-hero-actions a{
  display:inline-block;
  margin-right:10px;
}
.ww-btn-primary{
  background:var(--ww-accent);
  color:#fff;
  padding:10px 16px;
  border-radius:12px;
  text-decoration:none;
}
.ww-btn{
  border:1px solid var(--ww-line);
  padding:10px 16px;
  border-radius:12px;
  text-decoration:none;
}
.ww-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin-bottom:28px;
}
.ww-card{
  background:#ffffff;
  border:1px solid var(--ww-line);
  border-radius:16px;
  padding:18px;
}
@media(max-width:760px){
  .ww-cards{ grid-template-columns:1fr; }
}
/* v0.1.4 Typo & Abstände */
.ww-content{ padding: 22px; }
.ww-content h1, .ww-content h2, .ww-content h3{
  margin-top: 0.2em;
  margin-bottom: 0.6em;
  line-height: 1.2;
}
.ww-content h1{ font-size: 30px; }
.ww-content h2{ font-size: 22px; }
.ww-content h3{ font-size: 18px; }

.ww-content p{
  margin: 0 0 1em;
  line-height: 1.8;
  font-size: 16px;
}
.ww-content ul, .ww-content ol{
  margin: 0 0 1em 1.2em;
  line-height: 1.7;
}
.ww-content a{
  text-decoration: underline;
  text-underline-offset: 3px;
}
.ww-content .wp-block-separator{
  border: none;
  border-top: 1px solid var(--ww-line);
  margin: 24px 0;
}
.ww-card h2{ margin: 0 0 8px; font-size: 18px; }
.ww-card p{ margin:0; line-height:1.6; }
.ww-btn-primary, .ww-btn{
  font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight: 600;
}
.ww-btn:hover, .ww-btn-primary:hover{ opacity: .9; }
.ww-footer-links a{ margin-right: 12px; }
/* v0.1.5 Gutenberg Galerie/Media Styling */
.ww-content figure,
.ww-content .wp-block-image,
.ww-content .wp-block-gallery{
  margin: 0 0 18px;
}
.ww-content .wp-block-gallery{
  gap: 12px;
}
.ww-content .wp-block-gallery .wp-block-image{
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid var(--ww-line);
  background: #fff;
}
.ww-content .wp-block-gallery img{
  display:block;
  width:100%;
  height:auto;
}
.ww-content figcaption{
  margin-top: 8px;
  color: var(--ww-muted);
  font-size: 13px;
  line-height: 1.5;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}
/* Media & Text block */
.ww-content .wp-block-media-text{
  gap: 16px;
  align-items: start;
  margin: 0 0 22px;
}
.ww-content .wp-block-media-text__media img{
  border-radius: 14px;
  border: 1px solid var(--ww-line);
}
.ww-content .wp-block-media-text__content{
  padding: 0 !important;
}
/* Cover block */
.ww-content .wp-block-cover{
  border-radius: 16px;
  overflow:hidden;
  border: 1px solid var(--ww-line);
  margin: 0 0 22px;
}
/* v0.1.6 Menüs + Feinschliff */
.ww-nav ul{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}
.ww-nav li{ margin:0; padding:0; }
.ww-nav li a{
  text-decoration:none;
  color: var(--ww-ink);
  font-weight: 600;
}
.ww-nav li a:hover{ text-decoration: underline; }

/* Blockquote & Tabellen ruhiger */
.ww-content blockquote{
  margin: 0 0 18px;
  padding: 14px 16px;
  border-left: 4px solid var(--ww-line);
  background: #fff;
  border-radius: 12px;
  color: var(--ww-muted);
}
.ww-content table{
  width:100%;
  border-collapse: collapse;
  margin: 0 0 18px;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 14px;
}
.ww-content th, .ww-content td{
  border: 1px solid var(--ww-line);
  padding: 10px 10px;
  text-align:left;
}
.ww-content th{ background:#faf8f4; }

/* Kleine Infobox (für Hinweise) */
.ww-info{
  border:1px solid var(--ww-line);
  background:#ffffff;
  border-radius:14px;
  padding:14px 16px;
  margin: 0 0 18px;
  color: var(--ww-muted);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 14px;
  line-height: 1.6;
}
/* v0.1.7 FAQ Accordion (Details/Accordion) */
.ww-content .ww-faq-intro{
  margin: 0 0 18px;
  color: var(--ww-muted);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 14px;
  line-height: 1.6;
}

/* Style the core Details block (renders as <details><summary>) */
.ww-content details,
.ww-content .wp-block-details{
  border: 1px solid var(--ww-line);
  background: #ffffff;
  border-radius: 14px;
  padding: 0;
  margin: 0 0 12px;
  overflow: hidden;
}

.ww-content summary{
  list-style: none;
  cursor: pointer;
  padding: 14px 16px;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight: 700;
  color: var(--ww-ink);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
}
.ww-content summary::-webkit-details-marker{ display:none; }

.ww-content summary::after{
  content: "＋";
  font-weight: 700;
  color: var(--ww-muted);
}
.ww-content details[open] summary::after{
  content: "–";
}

.ww-content details > *:not(summary){
  padding: 0 16px 14px;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--ww-muted);
  font-size: 14px;
  line-height: 1.7;
}

/* Keep paragraphs inside details tidy */
.ww-content details p{
  margin: 10px 0 0;
  font-size: 14px;
  line-height: 1.7;
}
/* v0.1.9 Frontend Hinweise (Editor-freundlich) */
.ww-hint{
  border:1px dashed var(--ww-line);
  background:#faf8f4;
  border-radius:14px;
  padding:14px 16px;
  margin: 0 0 18px;
  color: var(--ww-muted);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 14px;
  line-height: 1.6;
}
.ww-hint strong{ color: var(--ww-ink); }

/* Empty content notice */
.ww-empty{
  border:1px dashed var(--ww-line);
  background:#fff;
  border-radius:14px;
  padding:18px;
  margin: 0 0 18px;
  color: var(--ww-muted);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  font-size: 14px;
}
/* v0.2.0 Karten-Ansicht für Dashboard/Listen */
.ww-content .wfd-panel,
.ww-content .wfd-row,
.wfd-panel, .wfd-row{
  border-radius: 16px !important;
}
.wfd-actions a.primary{
  background: var(--ww-accent) !important;
}
.wfd-actions a, .wfd-filters select, .wfd-filters input, .wfd-filters button{
  font-family: system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}
.wfd-filters button{
  padding: 10px 14px;
  border-radius: 12px;
  border: 1px solid var(--ww-line);
  background: #fff;
}
.wfd-filters button:hover{ opacity: .9; }

/* v0.2.1 Frontend-Design Upgrade */
:root{
  --ww-bg:#f6f3ef;
  --ww-card:#ffffff;
  --ww-text:#1f1f1f;
  --ww-muted:#6b6b6b;
  --ww-line:#e6ded4;
  --ww-accent:#6a7a64;
  --ww-accent2:#b07f4a;
  --ww-radius:18px;
}

body{
  background: radial-gradient(1200px 500px at 20% 0%, #fff 0%, var(--ww-bg) 55%, var(--ww-bg) 100%);
  color: var(--ww-text);
}

.site-header{
  padding: 18px 14px;
  border-bottom: 1px solid var(--ww-line);
  background: rgba(255,255,255,.75);
  backdrop-filter: blur(8px);
}

.site-header .inner{
  max-width: 1080px;
  margin: 0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.site-brand{
  display:flex;
  align-items:center;
  gap:12px;
}

.site-brand .logo{
  width:44px;
  height:44px;
  border-radius: 14px;
  border:1px solid var(--ww-line);
  background:#faf8f4;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:22px;
}

.site-brand .titles{
  line-height:1.1;
}
.site-brand .titles .name{
  font-weight:900;
  letter-spacing:.02em;
}
.site-brand .titles .tagline{
  color:var(--ww-muted);
  font-size:13px;
}

.main-nav a{
  display:inline-block;
  padding:10px 12px;
  border-radius:999px;
  border:1px solid var(--ww-line);
  text-decoration:none;
  margin-left:8px;
  background:#fff;
}
.main-nav a:hover{ opacity:.9; }

.ww-content{
  max-width: 980px;
  margin: 26px auto;
  padding: 0 14px;
}

.ww-surface{
  background: var(--ww-card);
  border: 1px solid var(--ww-line);
  border-radius: var(--ww-radius);
  padding: 22px 18px;
  box-shadow: 0 12px 30px rgba(0,0,0,.05);
}

.ww-content h1{
  font-size: 42px;
  line-height:1.08;
  margin: 0 0 10px;
  letter-spacing:-.02em;
}
.ww-content h2{
  font-size: 22px;
  margin: 22px 0 10px;
}
.ww-content p{ color:var(--ww-text); }

/* Make standalone links look like buttons (good for "Zum Shop", "Backoffice" etc.) */
.ww-content p > a:only-child{
  display:inline-block;
  padding: 10px 14px;
  border-radius: 12px;
  border: 1px solid var(--ww-line);
  background: #fff;
  text-decoration:none;
}
.ww-content p > a:only-child:hover{ opacity:.9; }

/* Highlight first two standalone links as primary buttons */
.ww-content p:nth-of-type(1) > a:only-child,
.ww-content p:nth-of-type(2) > a:only-child{
  background: var(--ww-accent);
  color:#fff;
  border-color: transparent;
}

/* Lists as feature boxes */
.ww-content ul{
  list-style: none;
  padding-left: 0;
  margin: 12px 0 0;
}
.ww-content li{
  padding: 10px 12px;
  border: 1px solid var(--ww-line);
  border-radius: 14px;
  background: #faf8f4;
  margin: 10px 0;
}
.ww-content li strong{ color:var(--ww-text); }

/* Footer */
.site-footer{
  margin-top: 28px;
  border-top: 1px solid var(--ww-line);
  background: rgba(255,255,255,.7);
}
.site-footer .inner{
  max-width:1080px;
  margin:0 auto;
  padding: 18px 14px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  justify-content:space-between;
  color: var(--ww-muted);
}
.site-footer a{
  color: var(--ww-muted);
  text-decoration: underline;
}

@media(max-width:720px){
  .site-header .inner{ flex-direction:column; align-items:flex-start; }
  .main-nav a{ margin-left:0; margin-right:8px; }
  .ww-content h1{ font-size: 32px; }
}

/* v0.2.2 Hero + Feature-Kacheln (ohne Inhalte ändern) */
.ww-content .ww-surface{
  position: relative;
  overflow: hidden;
}
.ww-content .ww-surface:before{
  content:"";
  position:absolute;
  inset:-2px;
  background: radial-gradient(700px 260px at 20% 0%, rgba(106,122,100,.18), transparent 60%),
              radial-gradient(700px 260px at 80% 10%, rgba(176,127,74,.14), transparent 60%);
  pointer-events:none;
}

.ww-content h1{
  margin-top: 0;
}
/* make first paragraph under H1 look like hero lead */
.ww-content h1 + p{
  font-size: 16px;
  color: var(--ww-muted);
  max-width: 72ch;
}

/* turn first UL on a page into feature grid */
.ww-content ul:first-of-type{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
  margin-top: 14px;
}
.ww-content ul:first-of-type li{
  background:#fff;
  border:1px solid var(--ww-line);
  box-shadow: 0 10px 24px rgba(0,0,0,.04);
  margin:0;
}
.ww-content ul:first-of-type li:before{
  content:"";
  display:block;
  height:3px;
  border-radius:999px;
  background: linear-gradient(90deg, var(--ww-accent), var(--ww-accent2));
  margin-bottom:10px;
}

/* Schnellstart list (ordered) as clean checklist */
.ww-content ol{
  padding-left: 0;
  list-style:none;
  counter-reset: wwstep;
  margin: 12px 0 0;
}
.ww-content ol li{
  counter-increment: wwstep;
  background:#fff;
  border:1px solid var(--ww-line);
  border-radius: 14px;
  padding: 10px 12px;
  margin: 10px 0;
}
.ww-content ol li:before{
  content: counter(wwstep);
  display:inline-flex;
  width:28px;
  height:28px;
  border-radius: 10px;
  align-items:center;
  justify-content:center;
  margin-right:10px;
  background: var(--ww-accent);
  color:#fff;
  font-weight:800;
}

/* Make nav links in content (first line links) nicer */
.ww-content a{
  text-underline-offset: 3px;
}

/* Mobile grid */
@media(max-width:720px){
  .ww-content ul:first-of-type{ grid-template-columns: 1fr; }
}

/* v0.2.3 Fix: doppelte Kontakt-Links vermeiden (Content vs Footer) */
.ww-content .ww-surface p > a[href*="kontakt"]:only-child{
  /* If content already contains a standalone Kontakt button, keep only the first one */
}
.ww-content .ww-surface p > a[href*="kontakt"]:only-child:nth-of-type(n+2){
  display:none !important;
}

/* Also hide a second occurrence in nav-like button rows */
.ww-content .ww-surface a[href*="kontakt"].wc-btn:nth-of-type(n+2){
  display:none !important;
}

/* v0.2.4 Buttons/Links konsistent + FAQ optisch besser */
.ww-content .ww-surface a{
  font-weight: 600;
}
.ww-content .ww-surface p > a:only-child{
  box-shadow: 0 10px 18px rgba(0,0,0,.05);
}
/* Make "Backoffice" button stand out if present */
.ww-content a[href*="backoffice"], .ww-content a[href*="backend"]{
  background: var(--ww-accent2) !important;
  color:#fff !important;
  border-color: transparent !important;
}
/* FAQ: questions as cards (Gutenberg headings + paragraphs) */
.ww-content h3{
  margin: 18px 0 8px;
  font-size: 18px;
}
.ww-content h3 + p{
  margin-top: 0;
  padding: 12px 12px;
  border: 1px solid var(--ww-line);
  border-radius: 14px;
  background: #fff;
}
/* General table styling (if needed later) */
.ww-content table{
  width:100%;
  border-collapse: separate;
  border-spacing: 0;
  overflow:hidden;
  border-radius: 14px;
  border:1px solid var(--ww-line);
  background:#fff;
}
.ww-content table td, .ww-content table th{
  padding: 10px 12px;
  border-bottom:1px solid var(--ww-line);
}
.ww-content table tr:last-child td{ border-bottom:0; }

/* v0.2.5 Footer klarer + Abschnittstrenner + Lesefluss */
.ww-divider{
  height:1px;
  background: linear-gradient(90deg, transparent, var(--ww-line), transparent);
  margin: 22px 0;
}

/* Footer layout improvements */
.site-footer .inner{
  align-items:flex-start;
}
.site-footer nav a{
  display:inline-block;
  margin-right:10px;
  padding:6px 0;
}
.site-footer .legal{
  font-size:13px;
}

/* Section spacing */
.ww-content .ww-surface > * + *{
  margin-top: 14px;
}

/* Highlight important notices */
.ww-note{
  padding: 12px 14px;
  border-radius: 14px;
  background: #fff7e8;
  border:1px solid #f1dcc2;
}

/* v0.2.6 Startseiten-Hero + CTAs */
.ww-hero{
  padding: 26px 22px;
  border-radius: var(--ww-radius);
  background: linear-gradient(135deg, #ffffff 0%, #faf7f2 60%);
  border: 1px solid var(--ww-line);
  box-shadow: 0 18px 36px rgba(0,0,0,.06);
}
.ww-hero h1{
  font-size: 44px;
}
.ww-hero .cta{
  display:flex;
  gap:12px;
  margin-top:14px;
  flex-wrap:wrap;
}
.ww-hero .cta a{
  padding: 12px 16px;
  border-radius: 14px;
  border:1px solid var(--ww-line);
  background:#fff;
  text-decoration:none;
  font-weight:700;
}
.ww-hero .cta a.primary{
  background: var(--ww-accent);
  color:#fff;
  border-color: transparent;
}

/* Feature tiles */
.ww-features{
  display:grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap:12px;
  margin-top:16px;
}
.ww-feature{
  padding:14px 14px;
  border-radius: 16px;
  background:#fff;
  border:1px solid var(--ww-line);
}
.ww-feature strong{
  display:block;
  margin-bottom:6px;
}

@media(max-width:900px){
  .ww-features{ grid-template-columns: repeat(2,1fr); }
}
@media(max-width:520px){
  .ww-hero h1{ font-size: 34px; }
  .ww-features{ grid-template-columns: 1fr; }
}

/* v0.2.7 Produkt-/Shopseiten: Vertrauen & Übersicht */
.ww-product{
  display:grid;
  grid-template-columns: 1.2fr .8fr;
  gap:16px;
}
.ww-product .media{
  background:#fff;
  border:1px solid var(--ww-line);
  border-radius: var(--ww-radius);
  padding:14px;
}
.ww-product .summary{
  background:#fff;
  border:1px solid var(--ww-line);
  border-radius: var(--ww-radius);
  padding:16px;
}
.ww-product .summary .price{
  font-size: 26px;
  font-weight: 900;
}
.ww-badges{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:8px 0 10px;
}
.ww-badge{
  padding:6px 10px;
  border-radius:999px;
  background:#faf7f2;
  border:1px solid var(--ww-line);
  font-weight:600;
}
.ww-info{
  padding:12px 14px;
  border-radius:14px;
  background:#f7fbf8;
  border:1px solid #dfe9e3;
  margin-top:10px;
}
@media(max-width:900px){
  .ww-product{ grid-template-columns: 1fr; }
}

/* v0.2.8 Bestellanfrage (Core) optisch hochwertiger */
.wc-wrap{
  max-width: 980px;
  margin: 0 auto;
  padding: 0 14px;
}
.wc-panel{
  background: var(--ww-card);
  border: 1px solid var(--ww-line);
  border-radius: var(--ww-radius);
  box-shadow: 0 12px 30px rgba(0,0,0,.05);
}
.wc-title{
  font-weight: 900;
  letter-spacing: -.01em;
}
.wc-help{
  color: var(--ww-muted);
}
.wc-btn{
  display:inline-block;
  padding: 12px 16px;
  border-radius: 14px;
  border: 1px solid var(--ww-line);
  background:#fff;
  text-decoration:none;
  font-weight: 800;
}
.wc-btn.primary{
  background: var(--ww-accent);
  color:#fff;
  border-color: transparent;
}
/* form fields */
.wc-panel input[type="text"],
.wc-panel input[type="email"],
.wc-panel input[type="url"],
.wc-panel input[type="number"],
.wc-panel textarea,
.wc-panel select{
  width: 100%;
  max-width: 720px;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid var(--ww-line);
  background: #fff;
  font-size: 15px;
}
.wc-panel textarea{ max-width: 720px; }
.wc-panel input:focus, .wc-panel textarea:focus, .wc-panel select:focus{
  outline: none;
  box-shadow: 0 0 0 3px rgba(106,122,100,.18);
  border-color: rgba(106,122,100,.55);
}
/* success/error boxes created as wc-panel inside wc-panel */
.wc-panel .wc-panel{
  box-shadow:none;
  border-style: dashed;
  background: #faf8f4;
}
.wc-panel strong{ font-weight:900; }

/* checkbox row */
.wc-panel input[type="checkbox"]{
  width:auto;
  transform: scale(1.05);
  margin-right:8px;
}

/* anchors */
#bestellanfrage{
  scroll-margin-top: 90px;
}

/* v0.2.9 Backoffice (Core) als echtes "Dashboard" */
.wc-head, .wc-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  justify-content:space-between;
}
.wc-actions a, .wc-actions .wc-btn{
  margin:0;
}
.wc-grid{
  gap: 14px;
}
.wc-card{
  transition: transform .08s ease, box-shadow .08s ease;
}
.wc-card:hover{
  transform: translateY(-1px);
  box-shadow: 0 16px 34px rgba(0,0,0,.07);
}
/* Make action links look like buttons inside cards (frontend backoffice) */
.wc-actions2 a{
  display:inline-block;
  padding: 10px 12px;
  border-radius: 12px;
  border:1px solid var(--ww-line);
  text-decoration:none !important;
  margin: 6px 8px 0 0;
  background:#fff;
}
.wc-actions2 a:hover{ opacity:.92; }
.wc-actions2 a.wc-danger{
  border-color: rgba(160,0,0,.25);
  background: #fff5f5;
}
/* Tabs in backoffice */
.wc-wrap .wc-panel a.wc-btn{
  display:inline-block;
  margin-right:8px;
  margin-bottom:8px;
}

/* v0.3.0 Kategorie-/Übersichtsseiten ruhiger & klarer */
.ww-archive-note{
  padding: 14px 16px;
  border-radius: 16px;
  background:#f7fbf8;
  border:1px solid #dfe9e3;
  margin-bottom:16px;
  font-weight:600;
}

/* Product cards grid */
.ww-archive-grid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:14px;
}
.ww-archive-card{
  background:#fff;
  border:1px solid var(--ww-line);
  border-radius: 18px;
  padding:12px;
  transition: transform .08s ease, box-shadow .08s ease;
}
.ww-archive-card:hover{
  transform: translateY(-1px);
  box-shadow: 0 16px 34px rgba(0,0,0,.07);
}
.ww-archive-card .thumb{
  border-radius: 14px;
  overflow:hidden;
  margin-bottom:10px;
}
.ww-archive-card .title{
  font-weight:900;
  margin-bottom:6px;
}
.ww-archive-card .meta{
  color: var(--ww-muted);
  font-size: 14px;
}

/* Empty state */
.ww-empty{
  padding: 26px 22px;
  border-radius: 18px;
  background:#fff;
  border:1px dashed var(--ww-line);
  text-align:center;
}
.ww-empty strong{
  display:block;
  margin-bottom:6px;
}

@media(max-width:980px){
  .ww-archive-grid{ grid-template-columns: repeat(2,1fr); }
}
@media(max-width:560px){
  .ww-archive-grid{ grid-template-columns: 1fr; }
}

/* v0.3.1 Header/Navigation: klarer + CTA */
.site-header{
  position: sticky;
  top: 0;
  z-index: 50;
}
.main-nav{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}
.main-nav a{
  border-radius: 999px;
}
.main-nav a.cta{
  background: var(--ww-accent);
  color:#fff;
  border-color: transparent;
  font-weight: 800;
}
.main-nav a.cta.secondary{
  background: var(--ww-accent2);
}
/* Logo icon polish */
.site-brand .logo{
  box-shadow: 0 10px 20px rgba(0,0,0,.06);
}

/* v0.3.2 Suche/Filter Look (falls später genutzt) */
.ww-searchbar{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  margin: 14px 0;
}
.ww-searchbar input[type="search"],
.ww-searchbar input[type="text"],
.ww-searchbar select{
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid var(--ww-line);
  background:#fff;
  min-width: 220px;
}
.ww-searchbar button{
  padding: 12px 16px;
  border-radius: 14px;
  border: 1px solid var(--ww-line);
  background:#fff;
  font-weight:800;
}
.ww-searchbar button.primary{
  background: var(--ww-accent);
  color:#fff;
  border-color: transparent;
}

/* Better default search form styling */
.search-form{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}
.search-form .search-field{
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid var(--ww-line);
  background:#fff;
  min-width: 240px;
}
.search-form .search-submit{
  padding: 12px 16px;
  border-radius: 14px;
  border: 1px solid var(--ww-line);
  background:#fff;
  font-weight:800;
}

/* v0.3.4 Footer & Rechtliches final + kleine Details */
.site-footer .columns{
  display:grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap:14px;
}
.site-footer .brand{
  font-weight:900;
}
.site-footer .links a{
  display:block;
  margin:6px 0;
}
.site-footer .meta{
  font-size:12px;
  color: var(--ww-muted);
}
/* subtle separators */
.hr-soft{
  height:1px;
  background: linear-gradient(90deg, transparent, var(--ww-line), transparent);
  margin:16px 0;
}
/* image polish */
img{
  border-radius: 12px;
}

/* v0.3.5 Produktdetail-Feinschliff: Bilder + Textfluss */
.ww-product .media img{
  width:100%;
  display:block;
  margin-bottom:10px;
}
.ww-product .summary h1{
  margin-top:0;
}
.ww-product .summary p{
  max-width: 70ch;
}
/* trust row */
.ww-trust{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:12px;
}
.ww-trust span{
  padding:8px 12px;
  border-radius:999px;
  background:#faf7f2;
  border:1px solid var(--ww-line);
  font-weight:700;
}

/* v0.3.6 Startseite final: USP/Trust-Section (ohne Inhalte ändern) */
/* Treat second list (if present) as USP row */
.home .ww-content ul:nth-of-type(2){
  display:grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap:12px;
  margin-top: 16px;
}
.home .ww-content ul:nth-of-type(2) li{
  background:#f7fbf8;
  border:1px solid #dfe9e3;
}
.home .ww-content ul:nth-of-type(2) li:before{
  background: linear-gradient(90deg, var(--ww-accent2), var(--ww-accent));
}

/* Make last paragraph on home feel like trust note */
.home .ww-content .ww-surface p:last-of-type{
  padding: 12px 14px;
  border-radius: 14px;
  background: #fff7e8;
  border:1px solid #f1dcc2;
}

/* Home CTA row if multiple buttons exist */
.home .ww-content .ww-hero .cta a{
  box-shadow: 0 14px 26px rgba(0,0,0,.06);
}
.home .ww-content .ww-hero .cta a.primary{
  box-shadow: 0 18px 30px rgba(106,122,100,.20);
}

@media(max-width:980px){
  .home .ww-content ul:nth-of-type(2){ grid-template-columns: repeat(2,1fr); }
}
@media(max-width:560px){
  .home .ww-content ul:nth-of-type(2){ grid-template-columns: 1fr; }
}

/* v0.3.7 Mobile Feinschliff: Touch, Typo, Abstände */
@media(max-width:520px){
  .main-nav a{ padding: 12px 14px; }
  .ww-content{ margin: 18px auto; }
  .ww-surface{ padding: 18px 14px; }
  .ww-content p{ font-size: 16px; line-height: 1.75; }
  .wc-btn, .ww-content p > a:only-child{ width: 100%; text-align:center; }
  .wc-actions2 a{ width: 100%; text-align:center; }
  .wc-grid{ gap: 12px; }
}

/* v0.3.8 Typografie-Feinschliff */
.ww-content h1, .ww-content h2, .ww-content h3{
  letter-spacing: -0.01em;
}
.ww-content h1{ margin-bottom: 10px; }
.ww-content h2{ margin-top: 26px; }
.ww-content p{
  margin-bottom: 12px;
}
.ww-surface{
  box-shadow: 0 14px 30px rgba(0,0,0,.04);
}

/* v0.3.9 Header/Footer finaler Feinschliff */
.site-header{
  box-shadow: 0 10px 22px rgba(0,0,0,.05);
}
.site-header .inner{
  gap:16px;
}
.site-brand .titles .name{
  font-size: 18px;
}
.site-brand .titles .tagline{
  font-size: 12px;
}

.site-footer{
  background: #f3efe9;
}
.site-footer .columns{
  gap:18px;
}
.site-footer .brand{
  font-size:16px;
}
.site-footer .links a{
  opacity:.9;
}
.site-footer .links a:hover{
  opacity:1;
}
.site-footer .meta{
  margin-top:10px;
}

/* Presets */
:root{
  --ww-accent:#6a7a64;
  --ww-accent2:#b07f4a;
}
.preset-hell{
  --ww-accent:#7aa2ff;
  --ww-accent2:#8bd3c7;
}

/* Fix rc2.1: Überschrift/Unterzeile überlappen nicht */
.ww-content h1{
  line-height: 1.12;
  margin-bottom: 14px;
}
.ww-content h1 + p{
  margin-top: 0;
}
/* If theme has tagline element in header */
.site-brand .titles .tagline{
  margin-top: 2px;
  line-height: 1.25;
}

/* Additional Presets */
.preset-kontrast{
  --ww-accent:#1f6feb;
  --ww-accent2:#ff6a3d;
  --ww-bg:#f2f4f8;
}
.preset-pastell{
  --ww-accent:#7f9cf5;
  --ww-accent2:#f6ad55;
  --ww-bg:#f7f4ff;
}
