/**
* Template Name: ZenBlog
* File: variables.css
* Description: Easily customize colors, typography, and other repetitive properties used in the template main stylesheet file main.css
* 
* Template URL: https://bootstrapmade.com/zenblog-bootstrap-blog-template/
* Author: BootstrapMade.com
* License: https://bootstrapmade.com/license/
* 
* Contents:
* 1. ZenBlog template variables 
* 2. Override default Bootstrap variables
* 3. Set color and background class names
*
* Learn more about CSS variables at https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties
*/

/*--------------------------------------------------------------
# 1. ZenBlog template variables 
--------------------------------------------------------------*/
:root {

  /* Fonts */
  --font-default: 'EB Garamond', system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-primary: 'Inter', serif;
  /*'Playfair Display', serif;*/
  --font-secondary: 'Inter', sans-serif;

  /* Colors */
  /* The *-rgb color names are simply the RGB converted value of the corresponding color for use in the rgba() function */

  /* Default text color */
  --color-default: #ffffff;
  --color-default-rgb: 255, 255, 255;

  /* Defult links color */
  --color-links: #d9b061;
  --color-links-hover: #a2a2a2;

  /* Primay colors */
  --color-primary: #212529;
  --color-primary-light: #26282c;
  --color-primary-dark: #0b0c0e;

  --color-primary-rgb: 33, 37, 41;
  --color-primary-light-rgb: 38, 40, 44;
  --color-primary-dark-rgb: 11, 12, 14;

  /* Secondary colors */
  --color-secondary: #596d80;
  --color-secondary-light: #8498aa;
  --color-secondary-dark: #404f5c;

  --color-secondary-rgb: 89, 109, 128;
  --color-secondary-light-rgb: 132, 152, 170;
  --color-secondary-dark-rgb: 64, 79, 92;

  /* General colors */
  --color-blue: #0d6efd;
  --color-blue-rgb: 13, 110, 253;

  --color-indigo: #6610f2;
  --color-indigo-rgb: 102, 16, 242;

  --color-purple: #6f42c1;
  --color-purple-rgb: 111, 66, 193;

  --color-pink: #f3268c;
  --color-pink-rgb: 243, 38, 140;

  --color-red: #df1529;
  --color-red-rgb: 223, 21, 4;

  --color-orange: #fd7e14;
  --color-orange-rgb: 253, 126, 20;

  --color-yellow: #ffc107;
  --color-yellow-rgb: 255, 193, 7;

  --color-green: #059652;
  --color-green-rgb: 5, 150, 82;

  --color-teal: #20c997;
  --color-teal-rgb: 32, 201, 151;

  --color-cyan: #0dcaf0;
  --color-cyan-rgb: 13, 202, 240;

  --color-white: #ffffff;
  --color-white-rgb: 255, 255, 255;

  --color-gray: #6c757d;
  --color-gray-rgb: 108, 117, 125;

  --color-black: #000000;
  --color-black-rgb: 0, 0, 0;
}

/*--------------------------------------------------------------
# 2. Override default Bootstrap variables
--------------------------------------------------------------*/
:root {
  --bs-blue: var(--color-blue);
  --bs-indigo: var(--color-indigo);
  --bs-purple: var(--color-purple);
  --bs-pink: var(--color-pink);
  --bs-red: var(--color-red);
  --bs-orange: var(--color-orange);
  --bs-yellow: var(--color-yellow);
  --bs-green: var(--color-green);
  --bs-teal: var(--color-teal);
  --bs-cyan: var(--color-cyan);
  --bs-white: var(--color-white);
  --bs-gray: var(--color-gray);
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: var(--color-blue);
  --bs-secondary: var(--color-blue);
  --bs-success: #198754;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #dc3545;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-primary-rgb: var(--color-primary-rgb);
  --bs-secondary-rgb: var(--color-secondary-rgb);
  --bs-success-rgb: 25, 135, 84;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 255, 193, 7;
  --bs-danger-rgb: 220, 53, 69;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 33, 37, 41;
  --bs-white-rgb: var(--color-white-rgb);
  --bs-black-rgb: var(--color-black-rgb);
  --bs-body-color-rgb: var(--color-default-rgb);
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-font-sans-serif: var(--font-default);
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: var(--font-default);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;
  --bs-body-color: var(--color-default);
  --bs-body-bg: #f6f9ff;
}

/*--------------------------------------------------------------
# 3. Set color and background class names
--------------------------------------------------------------*/
/* Fonts */
.font-default {
  font-family: var(--font-default) !important;
}

.font-primary {
  font-family: var(--font-primary) !important;
}

.font-secondary {
  font-family: var(--font-secondary) !important;
}

/* Text Colors */
.color-default {
  color: var(--color-default) !important;
}

.color-links {
  color: var(--color-links) !important;
}

.color-links:hover {
  color: var(--color-links-hover) !important;
}

.color-primary {
  color: var(--color-primary) !important;
}

.color-primary-light {
  color: var(--color-primary-light) !important;
}

.color-primary-dark {
  color: var(--color-primary-dark) !important;
}

.color-secondary {
  color: var(--color-secondary) !important;
}

.color-secondary-light {
  color: var(--color-secondary-light) !important;
}

.color-secondary-dark {
  color: var(--color-secondary-dark) !important;
}

.color-blue {
  color: var(--color-blue) !important;
}

.color-indigo {
  color: var(--color-indigo) !important;
}

.color-purple {
  color: var(--color-purple) !important;
}

.color-pink {
  color: var(--color-pink) !important;
}

.color-red {
  color: var(--color-red) !important;
}

.color-orange {
  color: var(--color-orange) !important;
}

.color-yellow {
  color: var(--color-yellow) !important;
}

.color-green {
  color: var(--color-green) !important;
}

.color-teal {
  color: var(--color-teal) !important;
}

.color-cyan {
  color: var(--color-cyan) !important;
}

.color-white {
  color: var(--color-white) !important;
}

.color-gray {
  color: var(--color-gray) !important;
}

.color-black {
  color: var(--color-black) !important;
}

/* Background Colors */
.bg-default {
  background-color: var(--color-default) !important;
}

.bg-primary {
  background-color: var(--color-primary) !important;
}

.bg-primary-light {
  background-color: var(--color-primary-light) !important;
}

.bg-primary-dark {
  background-color: var(--color-primary-dark) !important;
}

.bg-secondary {
  background-color: var(--color-secondary) !important;
}

.bg-secondary-light {
  background-color: var(--color-secondary-light) !important;
}

.bg-secondary-dark {
  background-color: var(--color-secondary-dark) !important;
}

.bg-blue {
  background-color: var(--color-blue) !important;
}

.bg-indigo {
  background-color: var(--color-indigo) !important;
}

.bg-purple {
  background-color: var(--color-purple) !important;
}

.bg-pink {
  background-color: var(--color-pink) !important;
}

.bg-red {
  background-color: var(--color-red) !important;
}

.bg-orange {
  background-color: var(--color-orange) !important;
}

.bg-yellow {
  background-color: var(--color-yellow) !important;
}

.bg-green {
  background-color: var(--color-green) !important;
}

.bg-teal {
  background-color: var(--color-teal) !important;
}

.bg-cyan {
  background-color: var(--color-cyan) !important;
}

.bg-white {
  background-color: var(--color-white) !important;
}

.bg-gray {
  background-color: var(--color-gray) !important;
}

.bg-black {
  background-color: var(--color-black) !important;
}

/*--------------------------------------------------------------
# 4. Dark Mode Overrides
--------------------------------------------------------------*/
html[data-theme="dark"] {
  /* Text Colors */
  --color-default: #e0e0e0;
  --color-default-rgb: 224, 224, 224;

  --color-primary: #e0e0e0;
  --color-primary-rgb: 224, 224, 224;

  --color-black: #ffffff;
  /* Headings become white */
  --color-black-rgb: 255, 255, 255;

  --color-white: #1e1e1e;
  /* Backgrounds become dark */
  --color-white-rgb: 30, 30, 30;

  /* Backgrounds */
  --bs-body-bg: #121212;
  /* Deep dark background */
  --bs-body-color: #e0e0e0;

  /* Bootstrap Overrides for Cards in Dark Mode */
  --bs-light: #2c2c2c;
  --bs-light-rgb: 44, 44, 44;
  --bs-white: #1e1e1e;
  /* Cards become Dark Gray, distinct from body */
  --bs-white-rgb: 30, 30, 30;
  --bs-gray-100: #1e1e1e;

  /* Specific Theme Overrides */
  --color-secondary: #a0a0a0;
  --color-links: #f0c070;
  /* Brighter gold for dark mode */
}

html[data-theme="dark"] body {
  background-color: var(--bs-body-bg);
  color: var(--bs-body-color);
}

html[data-theme="dark"] .section-header {
  border-bottom-color: rgba(255, 255, 255, 0.2) !important;
}

html[data-theme="dark"] .post-entry-1 {
  border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}

html[data-theme="dark"] .header {
  background: #2a1b35 !important;
  /* Proper dark purple */
}

html[data-theme="dark"] .card,
html[data-theme="dark"] .dropdown-menu {
  background-color: #1e1e1e;
  color: #e0e0e0;
  border-color: #333;
}

/* Toggle Button Styles */
.js-dark-mode-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
}

.js-dark-mode-toggle span {
  font-size: 20px;
  color: #ffffff;
  /* Always white for visibility on purple header */
}

.js-dark-mode-toggle:hover {
  background-color: var(--color-primary);
}

.js-dark-mode-toggle:hover span {
  color: var(--color-white);
}

html[data-theme="dark"] .js-dark-mode-toggle {
  background-color: rgba(255, 255, 255, 0.2);
}

html[data-theme="dark"] .js-dark-mode-toggle:hover {
  background-color: #f0c070;
}

/* Fix Single Post & Sidebar in Dark Mode */
html[data-theme="dark"] .single-post-card,
html[data-theme="dark"] .aside-block .post-entry-1,
html[data-theme="dark"] .aside-block .custom-tab-nav .nav-item button {
  background-color: var(--bs-white) !important;
  /* #1e1e1e */
  color: var(--bs-body-color);
  border-color: rgba(255, 255, 255, 0.1);
}

html[data-theme="dark"] .content-text p {
  color: #d0d0d0;
  /* Better readability than pure white or dark gray */
}

/* active tab button in sidebar */
html[data-theme="dark"] .aside-block .custom-tab-nav .nav-item button.active {
  background-color: #454545 !important;
  color: #fff !important;
  border-color: #454545;
}

/* sidebar links hover */
html[data-theme="dark"] .aside-links li a:hover {
  color: var(--color-links) !important;
}

/* Remove badge style from category names and fix dark mode color */
.aside-links li a span {
  background: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
}

/* Ensure category name is light in dark mode */
html[data-theme="dark"] .aside-links li a span.cat-name {
  color: #e0e0e0 !important;
}

html[data-theme="dark"] .aside-links li a i {
  color: #a0a0a0 !important;
  /* Lighter icon */
}


/* Force WP Gallery Grid Layout */
.wp-block-gallery {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  padding: 0;
  margin: 0 -0.5em 1em -0.5em;
  /* Negative margin for gap */
}

.wp-block-gallery .wp-block-image,
.wp-block-gallery .blocks-gallery-item {
  margin: 0 !important;
  /* Reset existing margins */
  padding: 0 0.5em 4px 0.5em;
  /* Gap spacing */
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  box-sizing: border-box;
  width: 33.33%;
  /* Default fallback */
}


.wp-block-gallery .wp-block-image img,
.wp-block-gallery .blocks-gallery-item img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

/* Columns handling */
.wp-block-gallery.columns-1 .wp-block-image {
  width: 100%;
}

.wp-block-gallery.columns-2 .wp-block-image {
  width: 50%;
}

.wp-block-gallery.columns-3 .wp-block-image {
  width: 33.33%;
}

.wp-block-gallery.columns-4 .wp-block-image {
  width: 25%;
}

.wp-block-gallery.columns-5 .wp-block-image {
  width: 20%;
}

.wp-block-gallery.columns-6 .wp-block-image {
  width: 16.66%;
}

.wp-block-gallery.columns-7 .wp-block-image {
  width: 14.28%;
}

.wp-block-gallery.columns-8 .wp-block-image {
  width: 12.5%;
}

@media (max-width: 600px) {
  .wp-block-gallery .wp-block-image {
    width: 50% !important;
    /* Force 2 cols on mobile */
  }
}

/* Fix Carousel Text Color (Must stay white on image) */
.hero-content h2 a,
.hero-content .date,
.hero-content p,
.hero-content .post-meta {
  color: #ffffff !important;
}

/* Custom Modern Lightbox 2 Styles */
#lightboxOverlay {
  background-color: #000 !important;
  opacity: 0.92 !important;
}

.lb-outerContainer {
  background-color: transparent !important;
  border-radius: 12px;
}

.lb-container {
  padding: 0 !important;
}

.lb-image {
  border: none !important;
  border-radius: 12px !important;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
}

.lb-dataContainer {
  padding: 10px;
  background: rgba(0, 0, 0, 0.6);
  border-bottom-left-radius: 12px;
  border-bottom-right-radius: 12px;
  margin-top: -5px;
  /* Pull up to connect with image */
  backdrop-filter: blur(5px);
  width: 100% !important;
}

.lb-data .lb-caption {
  font-size: 16px;
  font-weight: 500;
  color: #fff !important;
  line-height: 1.4;
  font-family: var(--font-primary);
}

.lb-data .lb-number {
  color: rgba(255, 255, 255, 0.6) !important;
  font-size: 13px;
  font-weight: 400;
  padding-top: 5px;
  display: block;
}

.lb-data .lb-close {
  width: 30px;
  height: 30px;
  background-size: 100%;
  opacity: 0.7;
  transition: all 0.3s ease;
  filter: invert(1);
}

.lb-data .lb-close:hover {
  opacity: 1;
  transform: rotate(90deg);
}

.lb-nav a.lb-prev,
.lb-nav a.lb-next {
  opacity: 1 !important;
}

/* Custom Pagination Styles - Remove Circles */
.custom-pagination .wp-pagenavi a,
.custom-pagination .wp-pagenavi span {
  border-radius: 4px !important;
  /* Square with slight round, not circle */
  width: auto !important;
  /* Allow variable width for numbers */
  min-width: 35px;
  height: 35px;
  line-height: 35px;
  padding: 0 10px;
  display: inline-block;
  text-align: center;
  border: 1px solid var(--color-light-gray);
  /* defined or use hex */
  margin: 0 2px;
}

.custom-pagination .wp-pagenavi span.current {
  background-color: var(--color-black) !important;
  color: #fff !important;
  border-color: var(--color-black) !important;
}

.custom-pagination .wp-pagenavi a:hover {
  background-color: #f0f0f0;
  color: #000;
}

/* Dark mode pagination */
html[data-theme="dark"] .custom-pagination .wp-pagenavi a {
  background-color: #2c2c2c;
  color: #fff;
  border-color: #444;
}

html[data-theme="dark"] .custom-pagination .wp-pagenavi span.current {
  background-color: var(--color-links) !important;
  /* Gold/Primary */
  color: #000 !important;
  font-weight: bold;
}

html[data-theme="dark"] .custom-pagination .wp-pagenavi a:hover {
  background-color: #444;
}

/* Dark Mode Dropdown Menu */
html[data-theme="dark"] .navbar .dropdown ul {
  background: #222 !important;
  border: 1px solid #333;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.5);
}

html[data-theme="dark"] .navbar .dropdown ul a {
  color: #b0b0b0 !important;
}

html[data-theme="dark"] .navbar .dropdown ul a:hover,
html[data-theme="dark"] .navbar .dropdown ul .active:hover,
/* Reduced Post Typography Sizes */
.post-entry-1 h2 {
  font-size: 18px !important;
  /* Was 22px */
}

.post-entry-1.lg h2 {
  font-size: 24px !important;
  /* Was 32px */
}

.post-meta {
  font-size: 11px !important;
  /* Was 13px */
}

.post-meta .date {
  font-size: 11px !important;
}