/* The legal pages are served under the app's CSP (style-src 'self'), so their styles live here, never inline. */
:root { --bg: #f4f6f5; --surface: #ffffff; --line: #d8e0dd; --text: #17252a; --text-muted: #53656a; --accent: #0f6b5c }
@media (prefers-color-scheme: dark) {
  :root { --bg: #0e1411; --surface: #151d19; --line: #263029; --text: #e4ece8; --text-muted: #9fb1a9; --accent: #4fc3a9 }
}
/* #91: the app's two typefaces, Manrope for text and IBM Plex Mono for code and data (copied from @fontsource into public/fonts). */
@font-face { font-family: 'Manrope Variable'; font-style: normal; font-display: swap; font-weight: 200 800; src: url(/fonts/manrope-latin-ext-wght-normal.woff2) format('woff2-variations'); unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF }
@font-face { font-family: 'Manrope Variable'; font-style: normal; font-display: swap; font-weight: 200 800; src: url(/fonts/manrope-latin-wght-normal.woff2) format('woff2-variations'); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD }
@font-face { font-family: 'IBM Plex Mono'; font-style: normal; font-display: swap; font-weight: 400; src: url(/fonts/ibm-plex-mono-latin-400-normal.woff2) format('woff2') }
* { box-sizing: border-box }
body { margin: 0; padding: 32px 16px; background: var(--bg); color: var(--text); font-family: "Manrope Variable", system-ui, sans-serif; line-height: 1.5 }
main { max-width: 720px; margin: 0 auto; padding: 32px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface) }
h1 { margin-top: 0; font-size: 24px }
h2 { margin: 28px 0 8px; font-size: 16px; color: var(--accent) }
p, li { color: var(--text); margin: 8px 0 }
ul, ol { margin: 8px 0; padding-left: 20px }
address { font-style: normal }
a { color: var(--accent) }
.muted { color: var(--text-muted); font-size: 14px }
nav { max-width: 720px; margin: 0 auto 16px; display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: 14px }
nav a { color: var(--text-muted); text-decoration: none }
nav a:hover, nav a:focus-visible { color: var(--accent) }
/* Tables and licence texts: the licence pages (lizenzen.html, licences.html) and the rig lists (funkgeraete.html, rigs.html). */
table { width: 100%; border-collapse: collapse; margin: 8px 0 16px; font-size: 14px }
th, td { text-align: left; padding: 6px 10px 6px 0; border-bottom: 1px solid var(--line); vertical-align: top }
th { color: var(--text-muted); font-weight: 600 }
/* #91: zebra stripes, the same tint of the text colour as the app's tables. */
tbody tr:nth-child(even) > td { background: color-mix(in srgb, var(--text) 3.5%, transparent) }
pre { white-space: pre-wrap; word-break: break-word; background: var(--bg); border: 1px solid var(--line); border-radius: 8px; padding: 16px; font-size: 12px; line-height: 1.4 }
/* A digest, revision or path in running text has no break point of its own; it breaks inside rather than sticking out of the page
   (newcomer walk 2026-10-18, F-j: the Emscripten image digest ran 33 px past the text column). */
code { overflow-wrap: anywhere }
code, pre, kbd { font-family: "IBM Plex Mono", ui-monospace, monospace }
h3 { margin: 20px 0 6px; font-size: 15px }
/* #91: the one way from a search landing page into the app. */
.cta { margin: 20px 0 }
.cta a { display: inline-block; padding: 8px 16px; border-radius: 8px; background: var(--accent); color: var(--surface); font-weight: 600; text-decoration: none }
