* { box-sizing: border-box; }
body { margin: 0; padding: 48px 20px; min-height: 100vh; background: #f5f6f8; color: #1d2735; font: 17px/1.55 system-ui, sans-serif; }
main { max-width: 570px; margin: min(10vh,90px) auto; padding: clamp(24px,5vw,48px); background: #fff; border: 1px solid #d8dfe6; border-radius: 16px; }
header { color: #25374b; font-size: 15px; font-weight: 750; }
h1 { margin: 24px 0 10px; font-size: clamp(30px,5vw,42px); line-height: 1.12; letter-spacing: -.035em; }
p { margin: 16px 0 22px; }
button,.action { display: inline-block; text-decoration: none; border: 0; border-radius: 8px; padding: 12px 18px; background: #223e5a; color: #fff; font: inherit; font-weight: 650; cursor: pointer; }
button:disabled { opacity: .65; }
[hidden] { display: none; }
:focus-visible { outline: 3px solid #087bcc; outline-offset: 3px; }
#status { color: #35485d; min-height: 1.5em; }
footer { border-top: 1px solid #dde3e8; margin-top: 30px; padding-top: 15px; color: #536572; font-size: 14px; }
dl { padding: 14px; border-radius: 8px; background: #eef3f7; }
dt { font-size: 14px; color: #43556a; font-weight: 650; }
dd { margin: 6px 0 0; }
code { overflow-wrap: anywhere; font-size: 13px; }
