/* Winnitude Brand Stylesheet for SearXNG */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,400..700;1,9..40,400..700&family=Space+Grotesk:wght@400;500;600;700&display=swap');

:root {
  --w-paper: #f5f4ef;
  --w-ink: #20271f;
  --w-muted: #697064;
  --w-line: #d7d9ce;
  --w-blue: #314ce5;
  --w-blue-hover: #243cbf;
  --w-green: #dfe5d7;
}

body {
  font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  background-color: var(--w-paper) !important;
  color: var(--w-ink) !important;
}

/* Eliminate ANY SearXNG background watermark */
.index .title,
#main_index .title,
div.title {
  background: none !important;
  background-image: none !important;
  min-height: unset !important;
  margin: 0 auto 2.5rem auto !important;
}

.index h1 {
  visibility: visible !important;
  font-size: unset !important;
  display: none !important;
}

/* Headings & Typography */
h1, h2, h3, .title, .brand-name {
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: -0.04em !important;
}

/* Front Page Winnitude Title */
.winnitude-brand-header {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 24px !important;
}

.winnitude-brand-link {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 6px !important;
  text-decoration: none !important;
  color: var(--w-ink) !important;
}

.winnitude-brand-row {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.winnitude-mark-svg {
  width: 48px !important;
  height: 48px !important;
  color: var(--w-ink) !important;
  flex-shrink: 0 !important;
}

.winnitude-wordmark {
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 52px !important;
  font-weight: 700 !important;
  letter-spacing: -2.5px !important;
  line-height: 1 !important;
  color: var(--w-ink) !important;
}

.winnitude-tagline {
  font-family: 'Space Grotesk', monospace !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: var(--w-blue) !important;
}

/* Results Header Layout (Fixed overlapping search bar issue) */
#search_header {
  grid-template-columns: max-content 1fr !important;
  grid-template-areas: "logo search" "spacer categories" !important;
  column-gap: 2rem !important;
  row-gap: 0.8rem !important;
  align-items: center !important;
  padding: 1.2rem 2rem 0.5rem 2rem !important;
}

#search_logo {
  grid-area: logo !important;
  width: auto !important;
  min-width: 175px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  text-decoration: none !important;
  padding: 0 !important;
  margin: 0 !important;
  white-space: nowrap !important;
}

.results-brand-mark {
  width: 30px !important;
  height: 30px !important;
  color: var(--w-ink) !important;
  flex-shrink: 0 !important;
}

.results-brand-words {
  display: flex !important;
  flex-direction: column !important;
  line-height: 1 !important;
}

.results-brand-text {
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  letter-spacing: -1.2px !important;
  color: var(--w-ink) !important;
}

.results-brand-sub {
  font-family: 'Space Grotesk', monospace !important;
  font-size: 9px !important;
  letter-spacing: 1.5px !important;
  color: var(--w-blue) !important;
  font-weight: 600 !important;
  margin-top: 2px !important;
}

#search_view {
  grid-area: search !important;
  width: 100% !important;
  max-width: 680px !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Search Box Container */
.search_box, #search_view .search_box {
  background: #ffffff !important;
  border: 1px solid var(--w-line) !important;
  border-radius: 0px !important;
  box-shadow: 0 4px 14px rgba(32, 39, 31, 0.06) !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

.search_box:focus-within {
  border-color: var(--w-blue) !important;
  box-shadow: 0 0 0 3px rgba(49, 76, 229, 0.18) !important;
}

#q {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 15px !important;
  color: var(--w-ink) !important;
  background: transparent !important;
  padding: 11px 14px !important;
}

#send_search {
  background: var(--w-blue) !important;
  color: #ffffff !important;
  border-radius: 0px !important;
  border: none !important;
  cursor: pointer !important;
  transition: background 0.15s ease !important;
}

#send_search:hover {
  background: var(--w-blue-hover) !important;
}

#send_search svg {
  fill: #ffffff !important;
}

/* Categories & Filters */
#categories {
  border-bottom: 1px solid var(--w-line) !important;
}

.category input[type="checkbox"]:checked + label {
  color: var(--w-blue) !important;
  border-bottom: 2px solid var(--w-blue) !important;
  font-weight: 600 !important;
}

.category label {
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
}

/* Results List */
article.result {
  background: #ffffff !important;
  border: 1px solid var(--w-line) !important;
  border-radius: 0px !important;
  padding: 18px 22px !important;
  margin-bottom: 16px !important;
  box-shadow: 0 1px 4px rgba(32, 39, 31, 0.03) !important;
}

article.result:hover {
  border-color: #b8bdab !important;
}

article.result h3 {
  margin-bottom: 6px !important;
}

article.result h3 a {
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  color: var(--w-blue) !important;
  text-decoration: none !important;
  line-height: 1.3 !important;
}

article.result h3 a:hover {
  text-decoration: underline !important;
}

article.result .content {
  color: #495246 !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
}

article.result .url_o1, article.result .url_i2 {
  font-family: monospace !important;
  font-size: 11px !important;
  color: var(--w-muted) !important;
}

/* Top Nav Links & Winnitude Linkback */
#links_on_top {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  top: 1.2rem !important;
  right: 1.5rem !important;
}

.link_on_top_winnitude {
  font-family: 'Space Grotesk', sans-serif !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  color: var(--w-blue) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  text-decoration: none !important;
  padding: 6px 12px !important;
  border: 1px solid var(--w-line) !important;
  background: #ffffff !important;
  border-radius: 2px !important;
  transition: all 0.15s ease !important;
}

.link_on_top_winnitude:hover {
  background: var(--w-blue) !important;
  color: #ffffff !important;
  border-color: var(--w-blue) !important;
}

.link_on_top_winnitude:hover svg {
  color: #ffffff !important;
}

#links_on_top a:not(.link_on_top_winnitude) {
  color: var(--w-muted) !important;
  font-family: 'DM Sans', sans-serif !important;
  font-size: 13px !important;
  text-decoration: none !important;
}

#links_on_top a:not(.link_on_top_winnitude):hover {
  color: var(--w-blue) !important;
}

/* Custom Winnitude Footer with Linkbacks */
footer.winnitude-footer {
  border-top: 1px solid var(--w-line) !important;
  background: transparent !important;
  color: var(--w-muted) !important;
  padding: 40px 20px 30px 20px !important;
  margin-top: 50px !important;
  text-align: center !important;
}

.winnitude-footer-nav {
  display: flex !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  gap: 16px 24px !important;
  margin-bottom: 16px !important;
  font-size: 13px !important;
}

.winnitude-footer-nav a {
  color: var(--w-ink) !important;
  text-decoration: none !important;
  font-weight: 500 !important;
  transition: color 0.15s ease !important;
}

.winnitude-footer-nav a:hover {
  color: var(--w-blue) !important;
}

.winnitude-footer-copy {
  font-size: 11px !important;
  color: var(--w-muted) !important;
  margin: 0 !important;
}

.winnitude-footer-copy a {
  color: var(--w-muted) !important;
  text-decoration: underline !important;
}

.winnitude-footer-copy a:hover {
  color: var(--w-blue) !important;
}

/* Dark mode override */
@media (prefers-color-scheme: dark) {
  html.theme-auto, html.theme-dark {
    --w-paper: #16181b;
    --w-ink: #f0f3eb;
    --w-muted: #8c9688;
    --w-line: #2d3338;
    --w-blue: #4d68ff;
    --w-blue-hover: #3b57f0;
  }
  
  html.theme-auto .search_box, html.theme-dark .search_box {
    background: #1f2327 !important;
  }
  
  html.theme-auto article.result, html.theme-dark article.result {
    background: #1f2327 !important;
    border-color: #2d3338 !important;
  }
  
  html.theme-auto article.result .content, html.theme-dark article.result .content {
    color: #c4cdc0 !important;
  }
  
  html.theme-auto .link_on_top_winnitude, html.theme-dark .link_on_top_winnitude {
    background: #1f2327 !important;
    border-color: #2d3338 !important;
    color: var(--w-blue) !important;
  }
  
  html.theme-auto .winnitude-mark-svg, html.theme-dark .winnitude-mark-svg,
  html.theme-auto .results-brand-mark, html.theme-dark .results-brand-mark {
    color: #f0f3eb !important;
  }
}
