
:root { --ink:#1a2332; --paper:#eef2f6; --line:#c5ced9; --accent:#0f6e56; }
body { margin:0; font:16px/1.45 "IBM Plex Sans", "Segoe UI", sans-serif; background:linear-gradient(160deg,#d7e0ea,#eef2f6 45%,#cfd9e4); color:var(--ink); min-height:100vh; }
main { max-width:22rem; margin:14vh auto; padding:1.6rem; background:#fff; border:1px solid var(--line); box-shadow:0 12px 40px rgba(26,35,50,.08); }
h1 { font-size:1.2rem; margin:0 0 1rem; letter-spacing:.02em; }
label { display:block; margin:0 0 .85rem; font-size:.92rem; }
input { display:block; width:100%; box-sizing:border-box; margin-top:.3rem; padding:.5rem .55rem; border:1px solid var(--line); border-radius:2px; font:inherit; }
button { margin-top:.35rem; padding:.55rem 1.1rem; border:0; background:var(--accent); color:#fff; font:inherit; cursor:pointer; }
p { margin:0 0 .85rem; color:#8a2f2f; }
