/* Blank (PHP) — theme custom layer.
 *
 * The foundation (reset, tokens, base typography, .container, utilities) comes
 * from globals.css, generated by /design from profiles/theme.default.json and
 * linked BEFORE this file in _header.php. This file is ONLY site chrome, and it
 * lives in @layer custom so it always wins over globals without specificity
 * fights. Use framework tokens here (--text-soft, --border, --space-*, …);
 * never reintroduce a second reset, token set, or .container rule. */

@layer custom {
  /* Blog reading column: reuse the framework container, just narrow it. */
  .container { --width-wide: var(--width-narrow); }

  /* --- header / nav --- */
  .site-header {
    display: flex; align-items: center; justify-content: space-between;
    gap: var(--space-m); flex-wrap: wrap;
    padding-block: var(--space-m);
  }
  .site-nav ul { display: flex; gap: var(--space-m); list-style: none; }
  .site-nav a { text-decoration: none; }
  .site-nav a:hover { text-decoration: underline; }

  /* --- footer --- */
  .site-footer {
    margin-top: var(--space-2xl);
    padding-top: var(--space-l);
    border-top: 1px solid var(--border);
    color: var(--text-soft);
    font-size: var(--text-s);
  }

  /* --- archive list --- */
  .archive-list { list-style: none; }
  .archive-item {
    padding-block: var(--space-s);
    border-bottom: 1px solid var(--border);
  }
  .archive-item:last-child { border-bottom: 0; }
  .archive-item a { text-decoration: none; font-weight: 500; }
  .archive-item a:hover { text-decoration: underline; }
  .archive-meta { color: var(--text-soft); font-size: var(--text-s); }

  /* --- pagination --- */
  .pagination {
    display: flex; gap: var(--space-m); align-items: center;
    margin-top: var(--space-xl); font-size: var(--text-s);
  }
  .pagination a { text-decoration: none; }
  .pagination a:hover { text-decoration: underline; }

  /* --- content media --- */
  article img,
  .prose img,
  figure img { margin-inline: auto; margin-block: var(--space-l); border-radius: var(--radius-m); }
  figure { margin-block: var(--space-l); }
  figure img { margin-block: 0; }
  figcaption { text-align: center; font-size: var(--text-s); color: var(--text-soft); margin-top: var(--space-xs); }
  .post-featured { margin-block: var(--space-l); }
  .post-featured img { margin: 0; }

  /* --- language switcher (multilingual sites only) --- */
  .lang-switcher ul { display: flex; gap: var(--space-s); list-style: none; }
  .lang-switcher a { font-size: var(--text-s); text-decoration: none; }
  .lang-switcher a[aria-current="true"] { font-weight: 600; text-decoration: underline; }
  .lang-switcher a[rel="nofollow"] { opacity: 0.55; }
}
