:root{--ink: #122018;--muted: #5a6b62;--brand: #0f6b4c;--brand-deep: #0a4d37;--paper: rgba(255, 255, 255, .82);--line: rgba(18, 32, 24, .1);--error: #9b2c2c;--radius: 1rem;--font-display: "Fraunces", Georgia, serif;--font-body: "Source Sans 3", system-ui, sans-serif}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font-family:var(--font-body);color:var(--ink);-webkit-font-smoothing:antialiased;background:#d8e6dc}#app{min-height:100dvh}button,input{font:inherit}h1{margin:0;font-family:var(--font-display);font-weight:600;font-size:clamp(1.75rem,4vw,2.35rem);letter-spacing:-.03em;line-height:1.15}.page{position:relative;min-height:100dvh;overflow:hidden}.atmosphere{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 90% 70% at 12% 18%,rgba(15,107,76,.35),transparent 55%),radial-gradient(ellipse 70% 60% at 88% 12%,rgba(31,58,79,.28),transparent 50%),linear-gradient(165deg,#e8f1ea,#c5d9cc 42%,#9fb8a8);transform:scale(1.02);animation:drift 18s ease-in-out infinite alternate}.atmosphere:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 40%,rgba(255,255,255,.18) 50%,transparent 60%);background-size:200% 100%;animation:sheen 12s linear infinite;pointer-events:none}@keyframes drift{0%{transform:scale(1.02) translateZ(0)}to{transform:scale(1.06) translate3d(-1.5%,1%,0)}}@keyframes sheen{0%{background-position:120% 0}to{background-position:-20% 0}}.shell{position:relative;z-index:1;max-width:28rem;margin:0 auto;padding:clamp(2rem,8vh,4.5rem) 1.25rem 2.5rem;display:grid;gap:1.25rem;animation:rise .7s ease-out both}@keyframes rise{0%{opacity:0;transform:translateY(.75rem)}to{opacity:1;transform:translateY(0)}}.brand{margin:0;font-family:var(--font-display);font-size:clamp(2.75rem,9vw,3.75rem);font-weight:700;letter-spacing:-.04em;color:var(--brand-deep);line-height:1}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.3rem 1.4rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 18px 40px #12201814}.stack{display:grid;gap:.9rem}.form{margin:0}.lede{margin:0;font-size:1.05rem;line-height:1.45}.meta,.muted,.success-note{margin:0;color:var(--muted);font-size:.95rem}.error{margin:0;color:var(--error);font-weight:600;font-size:.95rem}.field{display:grid;gap:.35rem}.field span{font-size:.9rem;font-weight:600}.field input{border:1px solid rgba(18,32,24,.16);border-radius:.65rem;padding:.7rem .8rem;background:#fff}.field input:focus{outline:2px solid rgba(15,107,76,.35);outline-offset:1px}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:.7rem;padding:.8rem 1rem;background:var(--brand);color:#fff;font-weight:600;cursor:pointer;transition:transform .15s ease,background .15s ease}.btn:hover:not(:disabled){background:var(--brand-deep);transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.ghost{background:transparent;color:var(--brand);border:1px solid rgba(15,107,76,.45)}.btn.ghost:hover:not(:disabled){background:#0f6b4c0f;transform:none}@media(prefers-reduced-motion:reduce){.atmosphere,.atmosphere:after,.shell{animation:none}}
