:root { font-family: system-ui, sans-serif; color: #19362c; background: #f2f6f3; line-height: 1.6; }
* { box-sizing: border-box; }
body { margin: 0; padding: 20px; }
main { max-width: 700px; margin: 24px auto; padding: clamp(18px, 4vw, 36px); border-radius: 16px; background: white; }
h1 { font-size: 1.8rem; } h2 { font-size: 1.15rem; }
a { color: #176347; overflow-wrap: anywhere; }
aside { background: #fff8e6; border: 1px solid #e9cf85; padding: 16px; border-radius: 10px; }
ul { padding-left: 22px; } li { margin-bottom: 8px; }
label { display: block; margin: 18px 0 6px; font-weight: 600; }
input:not([type=checkbox]) { width: 100%; padding: 12px; border: 1px solid #657c72; border-radius: 6px; font: inherit; }
.checkbox { font-weight: 400; } input[type=checkbox] { width: 20px; height: 20px; vertical-align: middle; }
button { width: 100%; margin-top: 20px; padding: 14px; border: 0; border-radius: 8px; background: #a42525; color: white; font: inherit; cursor: pointer; }
:focus-visible { outline: 3px solid #176347; outline-offset: 3px; }
.error { color: #9b1616; } .success { background: #e1f4e7; padding: 16px; }
