/* Base publique : conserver ce fichier après extra_head et avant photo.css. */
    :root { color-scheme: dark; --accent: var(--st-accent, #ff6a00); }
    body { margin: 0; font-family: Georgia, serif; background: var(--st-bg, #0d0601); color: var(--st-ink, #fff0e2); }
    a { color: var(--st-accent, #ff9a4d); text-decoration: none; }
    main, footer { max-width: 1320px; margin: 0 auto; padding: 1rem 1.2rem; }
    /* Header sticky : fond pleine largeur, contenu centré */
    body > header {
      position: sticky;
      top: 0;
      z-index: 1000;
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 12px;
      width: 100%;
      max-width: none;
      margin: 0;
      padding: 0.85rem max(1.2rem, calc((100% - 1320px) / 2 + 1.2rem));
      box-sizing: border-box;
      border-bottom: 1px solid var(--st-edge, #3a2a1f);
      background: rgba(13, 6, 1, 0.92);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
    }
    nav a { margin-left: 1rem; }
    form.search { display: flex; gap: .5rem; margin: 1rem 0; }
    input { background: #1c1c1c; color: inherit; border: 1px solid #444; padding: .45rem .6rem; }
    .grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 1rem; }
    .card { background: var(--st-bg, #1e1004); padding: .8rem; border: 1px solid var(--st-edge, #43230a); }
    .muted { color: var(--st-muted, #9a9488); font-size: .9rem; }
    footer { color: #777; font-size: .85rem; }
