/* fehlercode-suche.de — eigene CSS-Ergänzungen über Tailwind */

.fcms-ad {
  display: block;
  margin: 1.5rem 0;
  text-align: center;
  min-height: 90px;
  background: transparent;
}
.fcms-ad--placeholder {
  border: 1px dashed rgba(148, 163, 184, 0.4);
  background: rgba(148, 163, 184, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0.5rem;
  padding: 1.5rem 1rem;
  font-size: 0.75rem;
  letter-spacing: 0.05em;
}
.fcms-ad--header,
.fcms-ad--footer-pre { min-height: 90px; max-width: 970px; margin-left: auto; margin-right: auto; }
.fcms-ad--content-top,
.fcms-ad--content-mid,
.fcms-ad--content-bottom { min-height: 250px; }
.fcms-ad--sidebar-top,
.fcms-ad--sidebar-mid { min-height: 250px; max-width: 300px; }
.fcms-ad--sidebar-sticky { position: sticky; bottom: 1rem; min-height: 250px; max-width: 300px; }
.fcms-ad--mobile-anchor {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 30;
  background: white;
  box-shadow: 0 -4px 12px rgba(0,0,0,0.08);
  min-height: 50px;
  margin: 0;
  padding: 8px 0;
}
.fcms-ad--between-cards,
.fcms-ad--cat-header { min-height: 120px; }

.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

html { scroll-behavior: smooth; }

.prose a { color: rgb(37 99 235); text-decoration: underline; text-underline-offset: 2px; }
.prose a:hover { color: rgb(29 78 216); }
.prose h2 { font-weight: 700; margin-top: 2em; }
.prose h3 { font-weight: 600; margin-top: 1.5em; }
.prose ol > li::marker { color: rgb(37 99 235); font-weight: 700; }

#fcms-cookie-banner.is-visible { display: block !important; }

/* Such-Inputs: native Browser-Optik entfernen (Safari/iOS grauer Innen-Kasten,
   Lupe, Clear-X) — damit das eigene Pill-Design sauber bleibt */
input[type="search"] {
  -webkit-appearance: none;
  appearance: none;
}
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}

/* Header-Kategorien-Dropdown: per echtem CSS gesteuert (kein FOUC durch Tailwind-CDN-JIT) */
.nav-cat-menu {
  visibility: hidden; opacity: 0; pointer-events: none;
  transition: opacity .15s ease, visibility .15s ease; z-index: 50;
}
.nav-cat:hover .nav-cat-menu, .nav-cat:focus-within .nav-cat-menu {
  visibility: visible; opacity: 1; pointer-events: auto;
}

/* Such-Autocomplete-Dropdown */
.fcms-ac {
  position: absolute; left: 0; right: 0; top: calc(100% + 6px);
  background: #fff; border: 1px solid rgb(226 232 240);
  border-radius: 0.75rem; box-shadow: 0 10px 30px rgba(0,0,0,.12);
  z-index: 60; overflow: hidden; max-height: 60vh; overflow-y: auto;
}
.fcms-ac-item {
  display: flex; align-items: baseline; gap: .5rem;
  padding: .6rem .9rem; text-decoration: none; border-bottom: 1px solid rgb(241 245 249);
}
.fcms-ac-item:last-child { border-bottom: 0; }
.fcms-ac-item:hover, .fcms-ac-item.is-active { background: rgb(239 246 255); }
.fcms-ac-code { font-family: ui-monospace, monospace; font-weight: 700; color: rgb(29 78 216); }
.fcms-ac-meta { font-size: .75rem; color: rgb(100 116 139); text-transform: uppercase; }

@media (max-width: 1023px) {
  body { padding-bottom: 70px; }
}
