/* Shared styles for the plain content pages (philosophy/privacy/terms/credits) —
   was a byte-identical inline <style> block duplicated in all four. */

body {
    font: 16px/1.5 system-ui, sans-serif;
    max-width: 40rem;
    margin: 2rem auto;
    padding: 0 1rem;
    touch-action: manipulation;
    /* Break long words at the narrow 40rem measure — per-locale via <html lang>.
       -webkit- prefix still required for Safari/iOS. */
    -webkit-hyphens: auto;
    hyphens: auto;
    background:
        radial-gradient(circle, rgba(0,0,0,0.04) 2px, transparent 2px) 0 0/16px 16px,
        #fff;
}
h1, h2, h3, h4, h5, h6 { line-height: 1.125; -webkit-hyphens: none; hyphens: none; }
a { color: #d32f2f; }
a:visited { color: #7b5940; }
header { text-align: center; }
footer {
    margin-top: 2rem;
    padding: 2rem 0 0;
    border-top: 1px solid rgba(0,0,0,0.1);
    font-size: 0.8125rem;
    color: #666;
    text-align: center;
}
footer p { margin: 0 0 1rem; }
footer a { color: #666; }
/* same pill-shaped locale switcher as start.css */
.locale-switcher {
    box-sizing: border-box;
    font-size: 0.75rem;
    display: flex;
    width: fit-content;
    flex: 0 0 auto;
    line-height: 1;
    gap: 0.25rem;
    border: 1px solid #ddd;
    border-radius: 999px;
    padding: 0.125rem;
    margin: 0 auto 1rem;
    background: #f0f0f0;
}
.locale-switcher a, .locale-switcher span { color: #888; text-decoration: none; padding: 0.5rem 0.75rem; }
.locale-switcher .locale-current { color: #222; background: #fff; border-radius: 999px; font-weight: 700; box-shadow: 0 4px 4px rgba(0, 0, 0, 0.1); }

.content-image {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 1rem auto;
    border-radius: 1.25rem;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}