:root {
  color-scheme: light dark;

  --solid: light-dark(black, white);
  --grey-heavy: light-dark(#d5d5d5, #373a5d);
  --grey-light: light-dark(#f0f0f0, #292c47);
  --acc-color: light-dark(#053FFF, #50f1c1);
  --error-color: light-dark(#ff94be, #d01348);
}

body {
  color: var(--solid);
  background-color: light-dark(white, #1c1e30);
  accent-color: var(--acc-color);
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;

  max-width: min(800px, 90vw);
  margin: auto;
}

a, a:visited {
  color: var(--acc-color);
  text-decoration: none;
}

header {
  background: var(--grey-heavy);
  border: 0.5px solid var(--solid);
  border-top: none;
  padding: 0 1.5rem;
  display: flex;
  align-items: center;
  gap: 0;
  flex-wrap: wrap;
  min-height: 64px;

  .brand {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 0;
    text-decoration: none;

    img {
      height: 80px;
      display: block;
    }

    h1 {
      margin: 0;
      font-size: 1.25rem;
      font-weight: 500;
      letter-spacing: -0.01em;
    }
  }

  .brand-text {
    display: flex;
    flex-direction: column;
    line-height: 1.2;

    .brand-name {
      font-size: 1.5rem;
      font-weight: 1000;

      .homo { color: #F5A9B8; }
      .fon  { color: #5BCEFA; }
    }

    .brand-title {
      font-size: 1.5rem;
      color: var(--solid);
    }
  }

  nav {
    display: flex;
    align-items: center;
    gap: 2px;
    margin-left: auto;

    a {
      padding: 6px 14px;
      border-radius: 8px;
      font-size: 0.9rem;
      color: var(--text-muted); /* your muted text var */
      text-decoration: none;
      transition: background 0.15s, color 0.15s;

      &:hover {
        background: var(--grey-light);
        color: var(--text-primary);
      }

      &.current {
        background: light-dark(white, #1c1e30);
        color: var(--text-primary);
        font-weight: 500;
        border: 0.5px solid var(--solid);
        opacity: 0.3;
      }
    }
  }
}

footer {
  position: sticky;
  top: 100vh;
}

footer {
  border: solid 1px var(--solid);
  border-bottom: none;
  background: var(--grey-heavy);

  max-width: fit-content;
  margin: auto;
  padding: 0 1rem;

  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;

  > a {
    margin-left: 1em;
    margin-right: 1em;
  }
  .license {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: left;
    align-items: center;
    font-size: small;
    margin: auto;
    width: 100%;
    flex-basis: 100%;

    img {
      margin-right: 0.5em;
    }
  }
}
