* {
  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);
}

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

a:hover {
  text-decoration: underline;
}

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;
}

/* Cards */
.card {
  background: var(--color-surface);
  border-color: var(--color-border);
  color: var(--color-text);
}

.card-title {
  color: var(--color-text);
}

.card-footer {
  background: var(--color-surface);
  border-color: var(--color-border);
  color: var(--color-text);
}

/* 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; }
