/* Dark Mode Styles for OpenTags.io */

/* Dark mode variables */
:root {
  --dark-bg-primary: #0f0f23;
  --dark-bg-secondary: #1a1a2e;
  --dark-bg-tertiary: #16213e;
  --dark-text-primary: #ffffff;
  --dark-text-secondary: #b8b8b8;
  --dark-text-muted: #8a8a8a;
  --dark-border: #2d2d44;
  --dark-accent: #297984;
  --dark-accent-hover: #1f5a62;
  --dark-shadow: rgba(0, 0, 0, 0.3);
  --dark-card-bg: #1a1a2e;
  --dark-input-bg: #16213e;
  --dark-input-border: #2d2d44;
  --dark-input-text: #ffffff;
  --dark-placeholder: #8a8a8a;
}

/* Dark mode class */
.dark-mode {
  background-color: var(--dark-bg-primary) !important;
  color: var(--dark-text-primary) !important;
}

/* Header dark mode */
.dark-mode .header {
  background: rgba(15, 15, 35, 0.95) !important;
  backdrop-filter: blur(10px) !important;
  border-bottom: 1px solid var(--dark-border) !important;
}

.dark-mode .header.scrolled {
  background: rgba(15, 15, 35, 0.98) !important;
  box-shadow: 0 2px 20px var(--dark-shadow) !important;
}

.dark-mode .header .nav-menu > li > a {
  color: var(--dark-text-primary) !important;
}

.dark-mode .header .nav-menu > li > a:hover {
  color: var(--dark-accent) !important;
}

/* Hero banner dark mode */
.dark-mode .hero_banner {
  background: linear-gradient(135deg, #0f0f23 0%, #1a1a2e 100%) !important;
}

.dark-mode .hero_banner h1,
.dark-mode .hero_banner h2,
.dark-mode .hero_banner h3,
.dark-mode .hero_banner h4,
.dark-mode .hero_banner h5,
.dark-mode .hero_banner h6 {
  color: var(--dark-text-primary) !important;
}

.dark-mode .hero_banner p {
  color: var(--dark-text-secondary) !important;
}

/* Search form dark mode */
.dark-mode .search-website-wrapper.sup-form {
  background: var(--dark-card-bg) !important;
  border: 1px solid var(--dark-border) !important;
  box-shadow: 0 4px 20px var(--dark-shadow) !important;
}

.dark-mode .search-website-wrapper.sup-form .form-control {
  background: var(--dark-input-bg) !important;
  border: 1px solid var(--dark-input-border) !important;
  color: var(--dark-input-text) !important;
}

.dark-mode .search-website-wrapper.sup-form .form-control::placeholder {
  color: var(--dark-placeholder) !important;
}

.dark-mode .search-website-wrapper.sup-form .form-control:focus {
  border-color: var(--dark-accent) !important;
  box-shadow: 0 0 0 2px rgba(41, 121, 132, 0.2) !important;
}

.dark-mode .search-website-wrapper.sup-form .btn {
  background: var(--dark-accent) !important;
  border-color: var(--dark-accent) !important;
  color: var(--dark-text-primary) !important;
}

.dark-mode .search-website-wrapper.sup-form .btn:hover {
  background: var(--dark-accent-hover) !important;
  border-color: var(--dark-accent-hover) !important;
}

/* Content sections dark mode */
.dark-mode .content-block,
.dark-mode .highlight-block,
.dark-mode .faq-section,
.dark-mode .newsletter-section {
  background: var(--dark-bg-secondary) !important;
  border: 1px solid var(--dark-border) !important;
}

.dark-mode .content-block h1,
.dark-mode .content-block h2,
.dark-mode .content-block h3,
.dark-mode .content-block h4,
.dark-mode .content-block h5,
.dark-mode .content-block h6,
.dark-mode .highlight-block h1,
.dark-mode .highlight-block h2,
.dark-mode .highlight-block h3,
.dark-mode .highlight-block h4,
.dark-mode .highlight-block h5,
.dark-mode .highlight-block h6 {
  color: var(--dark-text-primary) !important;
}

.dark-mode .content-block p,
.dark-mode .highlight-block p {
  color: var(--dark-text-secondary) !important;
}

/* Cards and components dark mode */
.dark-mode .card,
.dark-mode .social-card,
.dark-mode .meta-tags-card {
  background: var(--dark-card-bg) !important;
  border: 1px solid var(--dark-border) !important;
  box-shadow: 0 4px 20px var(--dark-shadow) !important;
}

.dark-mode .card h1,
.dark-mode .card h2,
.dark-mode .card h3,
.dark-mode .card h4,
.dark-mode .card h5,
.dark-mode .card h6,
.dark-mode .social-card h1,
.dark-mode .social-card h2,
.dark-mode .social-card h3,
.dark-mode .social-card h4,
.dark-mode .social-card h5,
.dark-mode .social-card h6,
.dark-mode .meta-tags-card h1,
.dark-mode .meta-tags-card h2,
.dark-mode .meta-tags-card h3,
.dark-mode .meta-tags-card h4,
.dark-mode .meta-tags-card h5,
.dark-mode .meta-tags-card h6 {
  color: var(--dark-text-primary) !important;
}

.dark-mode .card p,
.dark-mode .social-card p,
.dark-mode .meta-tags-card p {
  color: var(--dark-text-secondary) !important;
}

/* Form elements dark mode */
.dark-mode input,
.dark-mode textarea,
.dark-mode select {
  background: var(--dark-input-bg) !important;
  border: 1px solid var(--dark-input-border) !important;
  color: var(--dark-input-text) !important;
}

.dark-mode input::placeholder,
.dark-mode textarea::placeholder {
  color: var(--dark-placeholder) !important;
}

.dark-mode input:focus,
.dark-mode textarea:focus,
.dark-mode select:focus {
  border-color: var(--dark-accent) !important;
  box-shadow: 0 0 0 2px rgba(41, 121, 132, 0.2) !important;
}

/* Buttons dark mode */
.dark-mode .btn-theme {
  background: var(--dark-accent) !important;
  border-color: var(--dark-accent) !important;
  color: var(--dark-text-primary) !important;
}

.dark-mode .btn-theme:hover {
  background: var(--dark-accent-hover) !important;
  border-color: var(--dark-accent-hover) !important;
}

.dark-mode .btn-outline-theme {
  border-color: var(--dark-accent) !important;
  color: var(--dark-accent) !important;
}

.dark-mode .btn-outline-theme:hover {
  background: var(--dark-accent) !important;
  color: var(--dark-text-primary) !important;
}

/* Footer dark mode */
.dark-mode .footer {
  background: var(--dark-bg-secondary) !important;
  border-top: 1px solid var(--dark-border) !important;
}

.dark-mode .footer h1,
.dark-mode .footer h2,
.dark-mode .footer h3,
.dark-mode .footer h4,
.dark-mode .footer h5,
.dark-mode .footer h6 {
  color: var(--dark-text-primary) !important;
}

.dark-mode .footer p,
.dark-mode .footer a {
  color: var(--dark-text-secondary) !important;
}

.dark-mode .footer a:hover {
  color: var(--dark-accent) !important;
}

/* Dark mode toggle button */
.dark-mode-toggle {
  background: transparent;
  border: 2px solid var(--dark-accent);
  color: var(--dark-accent);
  border-radius: 50%;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
  margin-left: 15px;
  padding: 0;
  font-size: 14px;
}

.dark-mode-toggle:hover {
  background: var(--dark-accent);
  color: white;
  transform: scale(1.1);
}

.dark-mode .dark-mode-toggle {
  border-color: var(--dark-text-primary);
  color: var(--dark-text-primary);
}

.dark-mode .dark-mode-toggle:hover {
  background: var(--dark-text-primary);
  color: var(--dark-bg-primary);
}

/* Logo visibility in dark mode */
.dark-mode .nav-brand img {
  filter: brightness(0) invert(1);
  width: 64px;
  height: 64px;
  object-fit: contain;
}

.dark-mode .brand_logo {
  filter: brightness(0) invert(1);
  width: 64px;
  height: 64px;
  object-fit: contain;
}

.dark-mode .brand_logo_sticky {
  filter: brightness(0) invert(1);
  width: 48px;
  height: 48px;
  object-fit: contain;
}

/* Dark mode toggle icon */
.dark-mode-toggle i {
  font-size: 18px;
  transition: transform 0.3s ease;
}

.dark-mode .dark-mode-toggle i {
  transform: rotate(180deg);
}

/* Smooth transitions */
* {
  transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

/* Scrollbar dark mode */
.dark-mode ::-webkit-scrollbar {
  width: 8px;
}

.dark-mode ::-webkit-scrollbar-track {
  background: var(--dark-bg-secondary);
}

.dark-mode ::-webkit-scrollbar-thumb {
  background: var(--dark-border);
  border-radius: 4px;
}

.dark-mode ::-webkit-scrollbar-thumb:hover {
  background: var(--dark-accent);
}

/* Selection dark mode */
.dark-mode ::selection {
  background: var(--dark-accent);
  color: var(--dark-text-primary);
}

/* Focus outline dark mode */
.dark-mode *:focus {
  outline: 2px solid var(--dark-accent);
  outline-offset: 2px;
} 