/* Pages annexes (licences, aide) */
:root { --bg: #fff; --fg: #333; --title: teal; --h2: #006666; --link: teal; --code: #f0f8f8; --border: #ddd; }
/* Sombre : suit le système, ou le bouton ☾/☀ (data-theme) */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme='light']) { --bg: #282c34; --fg: #abb2bf; --title: #66cccc; --h2: #66cccc; --link: #66cccc; --code: #21252b; --border: #3e4451; }
}
:root[data-theme='dark'] { --bg: #282c34; --fg: #abb2bf; --title: #66cccc; --h2: #66cccc; --link: #66cccc; --code: #21252b; --border: #3e4451; }

body { margin: 0; background: var(--bg); color: var(--fg); font: 15px/1.6 'Open Sans', 'Helvetica Neue', Arial, sans-serif; }
header { display: flex; align-items: center; justify-content: space-between; padding: 10px 16px; background: teal; color: #fff; font-size: 22px; font-weight: 300; }
header button { border: 0; border-radius: 4px; padding: 4px 10px; background: rgb(255 255 255 / 0.12); color: #fff; font-size: 18px; cursor: pointer; }
header button:hover { background: rgb(255 255 255 / 0.22); }
main { max-width: 820px; margin: 0 auto; padding: 16px; }
h1 { font-weight: 300; color: var(--title); }
h2 { margin-top: 32px; font-size: 18px; color: var(--h2); border-bottom: 1px solid var(--border); padding-bottom: 4px; }
a { color: var(--link); }
code { background: var(--code); padding: 1px 4px; border-radius: 3px; font-size: 13px; }
ul { padding-inline-start: 20px; }
/* Une version par langue : theme.js cache les autres (règle posée avant la lecture des <main>) */
header span { display: flex; gap: 6px; }
header #lang { border: 0; border-radius: 4px; padding: 4px 6px; background: rgb(255 255 255 / 0.12); color: #fff; font-size: 14px; font-family: inherit; cursor: pointer; }
header #lang option { color: #333; background: #fff; }
