:root { color-scheme: light; font-family: Inter, system-ui, sans-serif; color: #172a3a; background: #f7f2e8; }
* { box-sizing: border-box; }
body { margin: 0; line-height: 1.6; }
header { background: #052b47; color: white; padding: 1rem max(1rem, calc((100% - 820px) / 2)); }
header a { color: white; text-decoration: none; font-weight: 800; }
main { width: min(820px, calc(100% - 2rem)); margin: 2rem auto 4rem; background: white; border-radius: 16px; padding: clamp(1.25rem, 4vw, 3rem); box-shadow: 0 12px 40px #052b4714; }
h1, h2 { color: #052b47; line-height: 1.2; }
h2 { margin-top: 2rem; }
.notice { border-left: 4px solid #c79a2b; padding: .75rem 1rem; background: #fff8e5; }
label { display: block; margin-top: 1rem; font-weight: 700; }
input, textarea { width: 100%; margin-top: .35rem; padding: .8rem; border: 1px solid #9aa7b1; border-radius: 8px; font: inherit; }
.check { display: flex; gap: .6rem; align-items: flex-start; font-weight: 400; }
.check input { width: auto; margin-top: .35rem; }
button { margin-top: 1rem; padding: .8rem 1.2rem; border: 0; border-radius: 8px; background: #b3192d; color: white; font: inherit; font-weight: 800; cursor: pointer; }
button:disabled { opacity: .6; cursor: wait; }
#result { margin-top: 1rem; font-weight: 700; }
footer { text-align: center; padding: 1.5rem; }
