* {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  line-height: 1.6;
  color: var(--color-text, #e0e0e0);
  background: var(--color-bg, #1a1f24);
}

/* Re-point Bootstrap's own color variables at the theme, so every
   Bootstrap component and text utility (cards, badges, text-*-secondary,
   borders, links, ...) follows the theme without per-component overrides. */
:root {
  --bs-body-color: var(--color-text);
  --bs-body-bg: var(--color-bg);
  --bs-secondary-color: color-mix(in srgb, var(--color-text) 75%, var(--color-bg));
  --bs-tertiary-color: color-mix(in srgb, var(--color-text) 50%, var(--color-bg));
  --bs-secondary-bg: var(--color-surface);
  --bs-tertiary-bg: var(--color-surface);
  --bs-border-color: var(--color-border);
  --bs-border-color-translucent: var(--color-border);
  --bs-link-color: var(--color-link);
  --bs-link-hover-color: var(--color-primary);
  --bs-card-color: var(--color-text);
  --bs-card-bg: var(--color-surface);
  --bs-card-border-color: var(--color-border);
  --bs-card-cap-bg: var(--color-surface);
}

a {
  color: var(--color-link, #b7b7b7);
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

main a {
  color: #28a9e0;
}

h1, h2, h3, h4, h5, h6 {
  line-height: 1.25;
  margin: 1.25rem 0 0.75rem;
  color: var(--color-text);
}

p, ul, ol {
  margin: 0.75rem 0;
}

img {
  max-width: 100%;
  height: auto;
}

/* Bootstrap navbar */
.navbar {
  background: var(--color-bg) !important;
  border-bottom: 1px solid var(--color-border);
}

.navbar-brand {
  color: var(--color-text) !important;
}

.nav-link {
  color: var(--color-text) !important;
}

.nav-link:hover {
  color: var(--color-primary) !important;
}

/* Slider */
.slider-img {
  max-height: 480px;
  object-fit: cover;
}

/* Footer */
#footer {
  border-top: 1px solid var(--color-border);
  color: var(--color-text);
  padding: 1rem 0 2rem;
}

pre, code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  background: var(--color-surface);
  border-radius: 6px;
}

code { padding: 0.1rem 0.35rem; }
pre { padding: 0.75rem; overflow-x: auto; }
pre code { padding: 0; }

/* Responsive 16:9 YouTube embed (SML: YouTube { id / url }) */
.youtube-embed {
  position: relative;
  width: 100%;
  max-width: 100%;
  aspect-ratio: 16 / 9;
  margin: 1.25rem 0;
  overflow: hidden;
  border-radius: 8px;
  background: #000;
}

.youtube-embed iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
