/* Minimal alignment overrides only */

/* Center content and constrain width for readability */
.container {
  max-width: 72ch;
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px;
  padding-right: 16px;
}

/* Restore theme's accent colors for logo/title */
.logo {
  background: var(--accent) !important;
  color: var(--background) !important;
  padding: 5px 10px !important;
}

/* Active menu item styling - border only, no animation to avoid flicker */
.navigation-menu__inner a {
  display: inline-block;            /* stable layout */
  box-sizing: border-box;           /* include border in width */
  padding: 4px 8px;
  border: 2px solid transparent;    /* reserve space to prevent shift */
  border-radius: 0;                  /* square corners */
  transition: none;                  /* eliminate flicker on navigation */
}

/* Do not change non-active items on hover */
.navigation-menu__inner a:hover {
  background: transparent;
  color: inherit;
  border-color: transparent;
}

.navigation-menu__inner a.active {
  background: transparent;          /* transparent fill */
  color: var(--accent);
  border-color: var(--accent);      /* only color changes, no reflow */
}

.navigation-menu__inner a.active:hover {
  background: transparent;
}

/* Responsive media */
img,
video,
svg {
  max-width: 100%;
  height: auto;
}

/* Horizontal scroll for long code lines on small screens */
pre,
code {
  overflow-x: auto;
}

/* Keep title/logo colors fixed across all link states */
.header__logo a,
.header__logo a:link,
.header__logo a:visited,
.header__logo a:hover,
.header__logo a:active,
.header__logo a:focus {
  text-decoration: none !important;
  outline: none;
}

/* Explicitly lock the inner logo block colors on all states */
.header__logo a .logo,
.header__logo a:link .logo,
.header__logo a:visited .logo,
.header__logo a:hover .logo,
.header__logo a:active .logo,
.header__logo a:focus .logo {
  background: var(--accent) !important;
  color: var(--background) !important;
}