:root { color-scheme: light dark; font-family: -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "PingFang SC", "Segoe UI", Roboto, sans-serif; }
body { margin: 0; display: flex; justify-content: center; }
main { width: 100%; max-width: 480px; padding: 32px 20px; box-sizing: border-box; }
h1 { font-size: 22px; margin: 0 0 20px; }
h2 { font-size: 17px; margin: 0 0 12px; }
.summary { border: 1px solid rgba(127, 127, 127, 0.35); border-radius: 12px; padding: 16px; margin-bottom: 20px; }
dl { margin: 0; display: grid; grid-template-columns: max-content 1fr; gap: 6px 12px; font-size: 14px; }
dt { opacity: 0.65; }
dd { margin: 0; word-break: break-word; }
button { width: 100%; font-size: 16px; padding: 14px; border: 0; border-radius: 12px; background: #1f6feb; color: #fff; cursor: pointer; }
button:disabled { opacity: 0.5; cursor: default; }
.result { font-size: 17px; }
ul.points, ol, ul { padding-left: 20px; line-height: 1.5; font-size: 15px; }
ul.points li, ol li { margin-bottom: 8px; }
label.agree { display: flex; gap: 10px; align-items: flex-start; margin: 16px 0 20px; font-size: 15px; }
label.agree input { margin-top: 3px; }
details.reviewer { margin-top: 28px; font-size: 14px; }
details.reviewer summary { cursor: pointer; opacity: 0.7; }
details.reviewer input { display: block; width: 100%; box-sizing: border-box; margin: 10px 0; padding: 12px; font-size: 15px; border-radius: 10px; border: 1px solid rgba(127, 127, 127, 0.45); }
button.secondary { background: #57606a; }
p.note { font-size: 14px; opacity: 0.8; }
a.back { display: inline-block; margin-top: 16px; }
