* { box-sizing: border-box; }
:root { color-scheme: light; --green: #006c46; --ink: #17251e; --paper: #f4f2e9; --line: #bfcabe; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font: 1rem/1.75 -apple-system, BlinkMacSystemFont, "PingFang HK", "Microsoft JhengHei", system-ui, sans-serif; }
a { color: #005c3c; text-underline-offset: .2em; overflow-wrap: anywhere; }
a:focus-visible { outline: 3px solid #a75b00; outline-offset: 4px; }
header, main, footer { width: min(100% - 2rem, 52rem); margin-inline: auto; }
header { margin-block: 2rem; padding: 1.2rem 1.5rem; border: 6px double white; border-radius: .6rem; background: var(--green); color: white; }
header p { margin: 0; font-weight: 700; }
nav { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; margin-top: .75rem; }
header a { color: white; }
section[lang] { padding: clamp(1rem, 4vw, 2rem); margin-block: 1.5rem; border: 1px solid var(--line); background: white; border-radius: .5rem; scroll-margin-top: 1rem; }
h1 { font-size: clamp(1.7rem, 5vw, 2.25rem); line-height: 1.3; margin-top: 0; }
h2 { font-size: 1.2rem; line-height: 1.4; margin-top: 2rem; }
p { margin-block: .6rem 1rem; }
.date { color: #435846; }
.pending { border-left: .3rem solid #b77100; padding: .8rem 1rem; background: #fff6dc; }
footer { padding-block: 1rem 3rem; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
