:root { color-scheme: dark; font-family: system-ui, sans-serif; background: #101823; color: #edf3f8; line-height: 1.75; }
* { box-sizing: border-box; }
body { margin: 0; }
header, main, footer { max-width: 780px; margin: auto; padding: 22px; }
header { border-bottom: 1px solid #344356; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
main { padding-top: 32px; padding-bottom: 48px; }
h1 { line-height: 1.3; font-size: clamp(1.7rem, 5vw, 2.4rem); }
h2 { margin-top: 2rem; font-size: 1.25rem; }
p, li { color: #cfdae5; }
a { color: #84cbff; }
a:focus-visible { outline: 2px solid #84cbff; outline-offset: 3px; }
footer { border-top: 1px solid #344356; font-size: .85rem; }
nav { display: flex; flex-wrap: wrap; gap: 12px; }
@media (prefers-color-scheme: light) { :root { color-scheme: light; background: #f5f8fb; color: #18283a; } p, li { color: #304154; } a { color: #075c98; } header, footer { border-color: #c8d5e1; } }
