:root {
  --icon-size: 1.3rem;
  --icon-color: var(--text); /* Fallback color */
  --text: var(--text); /* Fallback text color */
  --accent: #78b6ad; /* Your brand color */
}

#nav-bar {
  padding: 0.625rem 0 0;
  display: flex;
  flex-wrap: nowrap; /* Prevent wrapping */
  gap: 0.5rem;
  justify-content: space-between;
  align-items: center;
  min-height: 60px; /* Ensure minimum height */
}

#nav-items {
  display: flex;
  flex-wrap: nowrap; /* Prevent wrapping */
  gap: 0.5rem;
  justify-content: flex-end;
  align-items: center;
  flex-shrink: 0; /* Prevent shrinking */
}

#footer-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.accent-data {
  color: var(--accent);
}

.theme-transition {
  transition: color 0.3s ease, background-color 0.3s ease;
}

.tags-data {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: flex-start;
  align-content: flex-end;
}

.title-list li {
  margin-bottom: 0.375rem;
}

/* icons settings */
.icon {
  width: var(--icon-size);
  height: var(--icon-size);
  display: inline-block;
  vertical-align: middle;
  color: var(--icon-color);
  fill: currentColor;
  transition: color 0.3s ease;
  cursor: pointer;
}

.icon:hover {
  --icon-color: var(--accent);
}

/* Theme toggle specific styles */
.theme-toggle {
  cursor: pointer;
  padding: 0.25rem;
  margin: 0;
  background: none;
  border: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  min-height: 24px;
  flex-shrink: 0;
}

/* Make sure icons are visible */
.icon {
  width: var(--icon-size);
  height: var(--icon-size);
  display: block;
  color: var(--icon-color);
  fill: currentColor;
  transition: color 0.3s ease;
  cursor: pointer;
}

.theme-toggle:hover .icon {
  --icon-color: var(--accent);
}

.theme-toggle:active {
  transform: scale(0.95);
}

/* footnotes */
.footnote-definition {
  margin: 0 0 0 0.125rem;
}

.footnote-definition-label {
  color: var(--accent);
}

.footnote-definition p {
  display: inline;
  margin: 0.625rem 0 0 0.625rem;
}

/* general classes */
/* Cleaned no-style class */
.no-style {
  all: unset;
  background: none !important;
  border: none !important;
}

.no-style:hover {
  background: transparent;
  color: inherit;
}

/* Modern float replacement */
.float-right {
  margin-inline-start: auto;
}

.float-left {
  margin-inline-end: auto;
}

.center {
  text-align: center;
}

.center img {
  display: block;
  margin: 1rem auto;
}

/* shortcodes css */
.webring {
  margin: 0.375rem;
}

/* Code block */
pre {
  max-height: 100rem !important;
  border: 1px solid var(--accent) !important;
  padding: 0.625rem !important;
  overflow: auto !important;
  white-space: pre !important;
  font-family: monospace !important;
  background-color: var(--bg-secondary, #282828) !important;
  border-radius: 0.8rem !important;
  tab-size: 2;
  -moz-tab-size: 2;
}

pre code {
  white-space: pre-wrap !important;
  display: block !important;
  overflow-x: auto !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
}

/* Inline code styles */
code {
  font-family: monospace !important;
  background-color: var(--bg-secondary, #a7c080) !important;
  padding: 0.125rem 0.25rem !important;
  border-radius: 0.25rem !important;
  font-size: 0.875em !important;
}

/* Ensure code blocks maintain formatting */
.highlight pre {
  white-space: pre !important;
  overflow-x: auto !important;
}

/* Image and video width */
iframe, img, video {
  max-width: 100%;
}