/* Vladfx KB Custom Styles */

:root {
  --md-primary-fg-color: #7c4dff;
  --md-accent-fg-color: #00e5ff;
  --md-default-bg-color: #0d1117;
  --md-default-fg-color: #e6edf3;
}

/* === Cards Grid === */
.md-typeset .grid.cards > ul > li,
.md-typeset .grid.cards > ol > li,
.md-typeset .grid > ul > li,
.md-typeset .grid > ol > li {
  border: 1px solid rgba(124, 77, 255, 0.25);
  border-radius: 12px;
  transition: all 0.25s ease;
  background: rgba(124, 77, 255, 0.06);
}

.md-typeset .grid.cards > ul > li:hover,
.md-typeset .grid.cards > ol > li:hover,
.md-typeset .grid > ul > li:hover,
.md-typeset .grid > ol > li:hover {
  border-color: rgba(0, 229, 255, 0.5);
  background: rgba(0, 229, 255, 0.06);
  box-shadow: 0 4px 20px rgba(0, 229, 255, 0.1);
  transform: translateY(-2px);
}

/* Card link styling */
.md-typeset .grid.cards > ul > li a,
.md-typeset .grid > ul > li a {
  color: #00e5ff;
  font-weight: 500;
}

.md-typeset .grid.cards > ul > li a:hover,
.md-typeset .grid > ul > li a:hover {
  color: #7c4dff;
}

/* Card heading (bold titles) */
.md-typeset .grid.cards > ul > li > strong:first-child,
.md-typeset .grid > ul > li > strong:first-child {
  color: #e6edf3;
}

/* === VEX Code Blocks === */
.md-typeset code {
  font-family: 'JetBrains Mono', 'Fira Code', 'Cascadia Code', monospace;
}

.md-typeset pre {
  border-radius: 8px;
  border: 1px solid rgba(124, 77, 255, 0.15);
  background: rgba(0, 0, 0, 0.4) !important;
}

.md-typeset pre code {
  font-size: 0.85em;
}

/* Code copy button */
.md-clipboard {
  color: rgba(255, 255, 255, 0.4);
  transition: color 0.2s;
}

.md-clipboard:hover {
  color: #00e5ff;
}

/* === Table Styling === */
.md-typeset table:not([class]) {
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid rgba(124, 77, 255, 0.2);
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.3);
}

.md-typeset table:not([class]) th {
  background-color: rgba(124, 77, 255, 0.2);
  font-weight: 700;
  border-bottom: 2px solid rgba(124, 77, 255, 0.4);
}

.md-typeset table:not([class]) td {
  border-top: 1px solid rgba(124, 77, 255, 0.1);
}

.md-typeset table:not([class]) tr:hover {
  background-color: rgba(0, 229, 255, 0.05);
}

/* === Admonition Styling === */
.md-typeset .admonition {
  border-radius: 8px;
  border-width: 1px;
}

.md-typeset .admonition.warning {
  border-color: #ff5252;
}

.md-typeset .admonition.warning > .admonition-title {
  background-color: rgba(255, 82, 82, 0.15);
}

.md-typeset .admonition.tip {
  border-color: #00e5ff;
}

.md-typeset .admonition.tip > .admonition-title {
  background-color: rgba(0, 229, 255, 0.12);
}

.md-typeset .admonition.note {
  border-color: #7c4dff;
}

.md-typeset .admonition.note > .admonition-title {
  background-color: rgba(124, 77, 255, 0.15);
}

/* === Search === */
.md-search-result__article--active {
  border-left-color: #00e5ff;
}

/* === Scrollbar === */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: #0d1117;
}

::-webkit-scrollbar-thumb {
  background: rgba(124, 77, 255, 0.5);
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: rgba(0, 229, 255, 0.5);
}

/* === Link Styling === */
.md-typeset a {
  color: #00e5ff;
  transition: color 0.2s;
}

.md-typeset a:hover {
  color: #7c4dff;
}

/* === Headings === */
.md-typeset h1 {
  color: #e6edf3;
  font-weight: 700;
  border-bottom: 2px solid rgba(124, 77, 255, 0.4);
  padding-bottom: 0.4em;
}

.md-typeset h2 {
  color: #c9d1d9;
  padding-bottom: 0.3em;
  border-bottom: 1px solid rgba(124, 77, 255, 0.25);
}

.md-typeset h3 {
  color: #b1bac4;
}

/* === Horizontal Rules === */
.md-typeset hr {
  border-top: 1px solid rgba(124, 77, 255, 0.2);
}

/* === Navigation === */
.md-tabs {
  background-color: rgba(124, 77, 255, 0.15);
  border-bottom: 1px solid rgba(124, 77, 255, 0.3);
}

.md-nav__link--active {
  color: #00e5ff;
}

.md-nav__link:hover {
  color: #00e5ff;
}

/* === Footer === */
.md-footer {
  background-color: rgba(124, 77, 255, 0.1);
  border-top: 1px solid rgba(124, 77, 255, 0.2);
}

/* === Sidebar === */
.md-sidebar__scrollwrap {
  scrollbar-width: thin;
  scrollbar-color: rgba(124, 77, 255, 0.4) transparent;
}
