:root { color-scheme: light; font-family: 'Segoe UI', Arial, sans-serif; color: #354831; background: #f7f5ee; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100dvh; display: grid; place-items: center; padding: 24px 16px; }
.entry { width: 100%; max-width: 540px; padding: 38px; background: #fffdf8; border: 1px solid #e0e6d5; border-radius: 28px; box-shadow: 0 12px 48px #3548310e; }
.sun { font-size: 46px; color: #b17b38; }
.eyebrow { font-size: 15px; color: #738362; margin: 16px 0; }
h1 { font: 40px/1.2 Georgia, serif; margin: 0 0 18px; }
p { font-size: 19px; line-height: 1.65; margin: 0 0 22px; }
label { display: block; font-size: 19px; font-weight: 600; margin-bottom: 10px; }
input { display: block; width: 100%; min-height: 56px; border: 1px solid #b8c9a9; border-radius: 12px; padding: 14px; color: inherit; background: white; font: 20px 'Segoe UI', sans-serif; }
input:focus-visible, button:focus-visible { outline: 3px solid #b68043; outline-offset: 3px; }
small { display: block; margin-top: 10px; font-size: 15px; line-height: 1.5; color: #738362; }
#entry-error { min-height: 24px; font-size: 17px; color: #a34536; margin: 14px 0; }
button { display: flex; justify-content: space-between; gap: 15px; width: 100%; min-height: 56px; padding: 16px 20px; border: 0; border-radius: 12px; color: white; background: #597a4e; font: 600 19px 'Segoe UI', sans-serif; cursor: pointer; }
button:disabled { opacity: .65; cursor: wait; }
.note { margin: 24px 0 0; padding-top: 20px; border-top: 1px solid #e3e8da; color: #738362; font-size: 15px; }
@media (max-width: 420px) { .entry { padding: 25px 22px; } h1 { font-size: 34px; } p { font-size: 17px; } }
