:root { --bg: #F5F7F1; --card: #FFFEF9; --ink: #183B39; --muted: #6B8580; --primary: #177D70; --mint: #DFF0E7; --border: #DCE8DF; --apricot: #F1C875; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--ink); font: 17px/1.55 -apple-system, "Segoe UI", Roboto, sans-serif; }
main { max-width: 720px; margin: 0 auto; padding: 48px 20px 72px; }
header { display: flex; align-items: center; gap: 14px; margin-bottom: 36px; }
.mark { width: 44px; height: 44px; border-radius: 14px; background: var(--ink); color: #F8FBF5; display: grid; place-items: center; font-weight: 800; letter-spacing: -1px; }
.mark span { color: var(--apricot); }
header a { color: var(--ink); text-decoration: none; font-weight: 700; }
nav { margin-left: auto; display: flex; gap: 18px; font-size: 15px; }
nav a { color: var(--muted); text-decoration: none; }
h1 { font-size: 40px; line-height: 1.05; letter-spacing: -1.5px; margin: 0 0 14px; }
h1 em { color: var(--primary); font-style: normal; }
h2 { font-size: 22px; margin: 36px 0 10px; letter-spacing: -0.5px; }
p, li { color: #2c4d4a; }
.lead { font-size: 19px; color: var(--muted); }
.card { background: var(--card); border: 1px solid var(--border); border-radius: 18px; padding: 22px 24px; margin: 18px 0; }
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 14px; }
.grid .card { margin: 0; }
.card h3 { margin: 0 0 6px; font-size: 17px; }
.card p { margin: 0; font-size: 15px; color: var(--muted); }
.notice { background: #F9EBC8; border-color: #f0dca4; color: #785B1B; }
footer { margin-top: 56px; font-size: 14px; color: var(--muted); }
footer a { color: var(--primary); }
code { background: var(--mint); padding: 2px 6px; border-radius: 6px; font-size: 15px; }
@media (max-width: 600px) { h1 { font-size: 32px; } nav { gap: 12px; } }
.lang { display: inline-flex; gap: 6px; align-items: center; color: var(--muted); }
.lang a { color: var(--muted); font-weight: 600; }
.lang a[aria-current="true"] { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; }
