:root{--ink:#2B0A22;--mute:#76606F;--pink:#FF6FB1;--bg:#FFFBF8;--card:#FFFFFF;--tint:#F7EEF4;--line:#EEDFE8}
@media(prefers-color-scheme:dark){:root{--ink:#FFE9F3;--mute:#D4B5C7;--bg:#1E0718;--card:#2E0E28;--tint:#2B0A22;--line:#4A2142}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.7 "Nunito","Avenir Next",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--pink)}
.top{border-bottom:1px solid var(--line)}
.top div{max-width:780px;margin:0 auto;padding:0 20px;height:64px;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-family:"Gaegu",cursive;font-weight:700;font-size:26px}
.logo img{width:32px;height:32px;border-radius:8px}
main{max-width:780px;margin:0 auto;padding:48px 20px 80px}
h1,h2{font-family:"Fraunces",Georgia,serif;font-variation-settings:"SOFT" 100;font-weight:600;letter-spacing:-.01em;line-height:1.15}
h1{font-size:clamp(34px,6vw,48px);margin:0 0 8px}
h2{font-size:24px;margin:44px 0 10px}
h3{font-size:18px;margin:24px 0 6px}
p,li{margin:0 0 12px}
ul{padding-left:22px}
.mute{color:var(--mute)}
.summary{background:var(--tint);border:1px solid var(--line);border-radius:22px;padding:22px 24px;margin:28px 0}
.summary h2{margin-top:0}
.note{font-size:14px;color:var(--mute);border-top:1px solid var(--line);margin-top:48px;padding-top:20px}
footer{max-width:780px;margin:0 auto;padding:0 20px 40px;font-size:14px;color:var(--mute);display:flex;gap:18px;flex-wrap:wrap}
footer a{color:var(--mute)}
