:root { color-scheme:dark; }
* { box-sizing:border-box; }
body { margin:0; background:radial-gradient(ellipse at 50% 0%,#0a1728,#05080e 650px); color:#c5d3df; font-family:system-ui,-apple-system,'Segoe UI',sans-serif; line-height:1.7; }
main { max-width:800px; margin:auto; padding:32px 24px 72px; }
a { color:#6bdff1; text-underline-offset:.2em; overflow-wrap:anywhere; }
a:hover { color:#d2f9ff; }
a:focus-visible,summary:focus-visible { outline:2px solid #6bdff1; outline-offset:5px; }
.back { display:inline-block; font-size:.95rem; }
header { margin:42px 0 32px; }
.brand { color:#74cfdd; font-size:.875rem; font-weight:700; letter-spacing:.08em; }
h1 { color:#f0f6fb; font-size:clamp(2rem,5vw,2.75rem); line-height:1.15; letter-spacing:-.025em; margin:12px 0; }
.updated { color:#93a8bb; font-size:.875rem; }
h2 { color:#e9f5fb; font-size:1.25rem; line-height:1.4; margin:32px 0 12px; }
h3 { color:#e9f5fb; font-size:1.05rem; margin:24px 0 8px; }
p,li { font-size:1rem; }
strong { color:#e1edf5; }
.intro { border-left:3px solid #62d7ea; padding:4px 0 4px 20px; margin:26px 0; }
.intro p { margin:6px 0; }
ul { padding-left:22px; }
li { padding:3px 0; }
details { margin-top:36px; border-block:1px solid #66859940; padding:18px 0; }
summary { font-weight:650; color:#b7d9e8; cursor:pointer; font-size:1rem; }
footer { display:flex; flex-wrap:wrap; gap:12px 28px; margin-top:32px; }
@media(max-width:480px) {
  main { padding:24px 20px 48px; }
  header { margin-top:30px; }
  .intro { padding-left:14px; }
}
