/* 01-base.css: reset, page frame, layout helpers, skip link. */
*, *::before, *::after {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    html {
      overflow-y: scroll;
      scrollbar-gutter: stable;
      background: var(--color-bg);
      color: var(--color-text);
      font-family: var(--font-mono);
      font-size: var(--text-base);
      line-height: 1.3;
      -webkit-font-smoothing: antialiased;
    }

    body {
      min-height: var(--stable-vh, 100vh);
      display: flex;
      flex-direction: column;
      background: var(--color-bg);
      color: var(--color-text);
      font-family: var(--font-mono);
      overflow-x: hidden;
    }

/* Skip link (keyboard users, visible on focus only) */
    .skip-link {
      position: absolute;
      left: 12px;
      top: -56px;
      z-index: 10000;
      padding: 10px 16px;
      background: #ffffff;
      color: #000000;
      font-size: var(--text-xs);
      text-transform: uppercase;
      letter-spacing: 0.06em;
      text-decoration: none;
      transition: top 0.2s ease;
    }
    .skip-link:focus-visible {
      top: 12px;
    }

    .container {
      width: 100%;
      margin: 0 auto;
      padding-inline: var(--gutter);
    }

    main {
      width: 100%;
      flex: 1;
    }

    a {
      color: inherit;
      text-decoration: none;
    }
