@import url("https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,700;12..96,800&family=Instrument+Sans:wght@400;500;600&display=swap");
:root { --night: #16153f; --violet: #7b5cff; --ink: #23223f; --ink-soft: #5d5b7e; --line: #dddbef; --mist: #f3f2fb; }
* { box-sizing: border-box; }
body { margin: 0; font-family: "Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif; font-size: 17px; line-height: 1.65; color: var(--ink); background: var(--mist); }
a { color: #4b31d6; }
:focus-visible { outline: 3px solid #2ee6c8; outline-offset: 3px; border-radius: 4px; }
header { background: var(--night); padding: calc(18px + env(safe-area-inset-top)) 0 18px; }
.wrap { width: min(760px, 100% - 40px); margin-inline: auto; }
.brand { display: inline-flex; align-items: center; gap: 10px; color: #fff; text-decoration: none; font-family: "Bricolage Grotesque", system-ui, sans-serif; font-weight: 700; font-size: 18px; }
.brand img { width: 30px; height: 30px; }
main { padding: 56px 0 96px; }
h1 { font-family: "Bricolage Grotesque", system-ui, sans-serif; font-weight: 800; font-size: clamp(34px, 5vw, 46px); line-height: 1.05; letter-spacing: -0.03em; margin: 0 0 8px; }
h2 { font-family: "Bricolage Grotesque", system-ui, sans-serif; font-weight: 700; font-size: 22px; letter-spacing: -0.01em; margin: 40px 0 8px; }
p, li { color: #3a3858; }
li { margin: 6px 0; }
.updated { color: var(--ink-soft); font-size: 15px; margin: 0 0 28px; }
.summary { background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 18px 22px; }
.summary p { margin: 6px 0; }
footer { border-top: 1px solid var(--line); padding: 28px 0 calc(40px + env(safe-area-inset-bottom)); font-size: 15px; color: var(--ink-soft); }
footer a { margin-right: 18px; }
