:root { color-scheme: light; background: #f7f4ea; color: #18382f; font-family: system-ui, sans-serif; }
body { min-height: 100dvh; margin: 0; display: grid; place-items: center; }
main { box-sizing: border-box; width: min(33rem, calc(100% - 2rem)); padding: clamp(1.5rem, 5vw, 3rem); background: #fffdf7; border: 1px solid #d9e0d5; border-radius: 1rem; }
h1 { margin: 0.25rem 0 0.75rem; font-size: clamp(1.5rem, 5vw, 2rem); }
p { line-height: 1.6; }
.brand { font-weight: 700; margin: 0; }
button { color: #fff; background: #245e4d; border: 0; border-radius: 0.5rem; font: inherit; font-weight: 700; padding: 0.75rem 1.25rem; cursor: pointer; min-height: 44px; }
button:focus-visible { outline: 3px solid #174236; outline-offset: 3px; }
button:disabled { opacity: .6; cursor: wait; }
#status { min-height: 1.6em; margin-bottom: 0; }
