/*
 Theme Name:     Onlinemarktplatz Child
 Template:       donovan
 Version:        1.1
*/

/* ========== Eigene CSS-Anpassungen ========== */

/* 1) Widget-TITEL in der Sidebar */
#secondary .widget-title {
  font-family: Quicksand, Tahoma, Arial, sans-serif;
  font-weight: 700;
  font-size: 20px;
  line-height: 1.4;
}

/* 2) Link- und Listentext in ALLEN Widgets in der Sidebar */
#secondary .widget a { text-decoration: none; }
#secondary .widget a:hover { text-decoration: underline; }
#secondary .widget ul li { 
  font-size: 17px;
  line-height: 1.6;
}

/* 3) „Meistgelesen“-Widgets (WPP & ThemeZee) */
#secondary .wpp-list li,
#secondary .tzwb-posts-list li {
  font-size: 15px;
  line-height: 1.8;
}
#secondary .tzwb-posts-list .tzwb-entry-meta {
  font-size: 14px;
  opacity: .85;
}

/* 4) VSEL-Event-Widget („Veranstaltungen“) */
#secondary .vsel-widget .vsel-content,
#secondary .vsel-widget .vsel-meta-title {
  font-size: 16px;
  line-height: 1.6;
  font-weight: 400;
}

/* Titel im VSEL-Widget fett */
.vsel-widget .widget-title {
  font-weight: bold !important;
}

/* Linie (hr) nur im Widget ausblenden */
#secondary .vsel-widget hr,
#secondary .vsel-widget .vsel-divider {
  display: none !important;
}
/* Sicherheit: Linie auf Einzel-Eventseiten sichtbar */
.single-event hr.vsel-divider {
  display: block !important;
}

/* Abstand im Events-Widget anpassen */
.vsel-widget .vsel-meta-location {
  margin-bottom: 2px !important;
  padding-bottom: 0 !important;
}
.vsel-widget .vsel-content {
  padding-bottom: 4px !important;
  margin-bottom: 2px !important;
}
.vsel-widget-text p {
  margin-bottom: 4px !important;
  margin-block-end: 4px !important;
}
.vsel-widget-text hr {
  margin-top: 6px !important;
  margin-bottom: 6px !important;
}

/* ==== ISC: Quelle klein und ohne Link darstellen ==== */
.isc-source-text { 
  font-size: 0.75em !important; 
  color: #404040 !important; 
  text-decoration: none !important; 
  background-color: #f9f8f8 !important; 
}

/* Kleinere Schrift für Meta-Angaben */
.entry-details,
.entry-details * {
  font-size: 0.5em !important;  
  color: #666;
  line-height: 1.4;
}

/* ==== Einheitlicher Stil für TOC & Contextual Related Posts ==== */
#ez-toc-container,
.output-container {
  border: 1px solid #e5e5e5;
  background-color: #fafafa;
  padding: 14px;
  margin: 20px 0;
  border-radius: 4px;
  font-size: 15px;
}

/* TOC rechts floaten */
#ez-toc-container {
  float: right !important;
  width: 40% !important;
  margin: 0 0 1em 1em !important;
  clear: none !important;
}
#ez-toc-container + .ez-toc-clear,
#ez-toc-container + br,
#ez-toc-container ~ .ez-toc-clear,
#ez-toc-container ~ br {
  display: none !important;
}

#ez-toc-container .ez-toc-title-container,
.output-container b {
  display: block;
  background-color: #f0f0f0;
  padding: 8px 12px;
  font-weight: bold;
  border-bottom: 2px solid #e0e0e0;
  margin: -14px -14px 14px -14px;
  border-radius: 4px 4px 0 0;
  width: calc(100% + 28px);
}

#ez-toc-container .ez-toc-title {
  font-size: 16px;
  font-weight: bold;
  margin: 0;
  text-align: left;
  border: none !important;
}

#ez-toc-container .ez-toc-title-container::before,
#ez-toc-container .ez-toc-title-container::after,
#ez-toc-container .ez-toc-title::before,
#ez-toc-container .ez-toc-title::after {
  content: none !important;
}

#ez-toc-container ol {
  list-style: decimal inside;
  margin: 0;
  padding: 0;
}
#ez-toc-container li {
  margin-bottom: 8px;
  line-height: 1.5;
}
#ez-toc-container li::before {
  content: none !important;
}

#ez-toc-container a,
.output-container a {
  color: #0066cc;
  text-decoration: none;
  font-size: 15px !important;
  word-break: break-word;
}
#ez-toc-container a:hover,
.output-container a:hover {
  color: red;
  text-decoration: underline;
}

/* ==== Faktenbox ==== */
.faktenbox {
  margin: 20px 0;
  border: 1px solid #e5e5e5;
  background-color: #fafafa;
  border-radius: 6px 6px 0 0;
  overflow: hidden;
}
.faktenbox table {
  width: 100%;
  border-collapse: collapse;
}
.faktenbox thead th {
  background-color: #f0f0f0;
  font-weight: bold;
  padding: 12px;
  font-size: 16px;
  text-align: left;
  border-bottom: 2px solid #e0e0e0;
}
.faktenbox tbody tr {
  border-bottom: 1px solid #e0e0e0;
}
.faktenbox tbody tr:last-child {
  border-bottom: none;
}
.faktenbox td {
  padding: 8px;
  font-size: 15px;
  line-height: 1.3;
}

/* ==== Events in ganzer Breite ==== */
.vsel-wrapper {
  display: flex !important;
  flex-direction: column !important;
}
.vsel-meta,
.vsel-info {
  width: 100% !important;
  float: none !important;
}
.vsel-meta { order: -1 !important; }
.vsel-info { order: 0 !important; }

/* Paginierung zentrieren */
.vsel-nav-numeric,
.vsel-nav {
  display: block;
  text-align: center;
  margin: 2em 0;
}
.vsel-nav-numeric .page-numbers,
.vsel-nav .next,
.vsel-nav .previous {
  display: inline-block;
  margin: 0 .25em;
  padding: .5em .75em;
  text-decoration: none;
  border: 1px solid #ddd;
  border-radius: 3px;
}
.vsel-nav-numeric .page-numbers.current {
  background: #333;
  color: #fff;
  border-color: #333;
}
.vsel-backlink {
  margin: 2em 0 1em;
}
.vsel-backlink a {
  font-weight: 600;
  color: #333;
  text-decoration: none;
}
.vsel-backlink a:hover {
  text-decoration: underline;
}

/* ── VSEL: Trennlinien NUR im Sidebar-Widget entfernen ── */
#secondary .vsel-widget hr,
#secondary .vsel-widget .vsel-divider {
  display: none !important;
  height: 0 !important;
  border: 0 !important;
}

/* Viele Themes/Plugins zeichnen Linien per border oder ::before/::after */
#secondary .vsel-widget .vsel-content,
#secondary .vsel-widget .vsel-info,
#secondary .vsel-widget .vsel-meta,
#secondary .vsel-widget .vsel-wrapper {
  border: 0 !important;
  box-shadow: none !important;
}

#secondary .vsel-widget .vsel-content::before,
#secondary .vsel-widget .vsel-content::after,
#secondary .vsel-widget .vsel-info::before,
#secondary .vsel-widget .vsel-info::after {
  content: none !important;
  display: none !important;
}

/* ── Auf Einzelevent-Seiten Trennlinie ausdrücklich anzeigen ── */
.single-event hr.vsel-divider {
  display: block !important;
  height: auto !important;
  border: 0;
  border-top: 1px solid rgba(0,0,0,.12); /* ggf. anpassen */
}




/* ==== Suchformular ==== */
.search-form {
  display: flex;
  flex-direction: column;
  max-width: 600px;
  margin: 1rem auto;
  border: 1px solid #ccc;
  border-radius: 6px;
  overflow: hidden;
  background: #fff;
}
.search-form .search-top {
  display: flex;
}
.search-form .search-top input[type="search"] {
  flex: 1;
  padding: 0.75rem 1rem;
  font-size: 1rem;
  border: none;
  outline: none;
}
.search-form .search-top .search-button {
  padding: 0 1.25rem;
  background: #000;
  color: #fff;
  border: none;
  cursor: pointer;
  transition: background .2s;
}
.search-form .search-top .search-button:hover {
  background: #333;
}
.search-form .search-type select {
  width: 100%;
  padding: 0.75rem 1rem;
  font-size: 1rem;
  border: none;
  border-top: 1px solid #ccc;
  background: #fff
    url("data:image/svg+xml;charset=US-ASCII,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5'%3E%3Cpath fill='%23333' d='M2 5L0 0h4z'/%3E%3C/svg%3E")
    no-repeat right 1rem center;
  background-size: 8px 10px;
  appearance: none;
  cursor: pointer;
}
@media (max-width: 480px) {
  .search-form { width: 100%; }
  .search-form .search-top { flex-direction: column; }
  .search-form .search-top input,
  .search-form .search-top .search-button,
  .search-form .search-type select {
    width: 100%;
    padding: 0.75rem 1rem;
  }
  .search-form .search-top .search-button {
    border-top: 1px solid #ccc;
  }
#secondary { outline: 3px solid fuchsia !important; }
