:root{color-scheme:light;--bg-cream: #fef7e5;--bg-sand: #f6e9cf;--ink: #14213d;--muted: #5f6c7b;--teal: #0b9488;--teal-deep: #0a6b62;--sun: #f4b266;--rose: #e2786b;--card: rgba(255, 255, 255, .82);--stroke: rgba(15, 23, 42, .08);--shadow: 0 24px 60px rgba(15, 23, 42, .18);font-family:Space Grotesk,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top left,#fff3d6,#fbe8c8 35%,#f0dbc2);color:var(--ink);overflow-x:hidden}body:before,body:after{content:"";position:fixed;width:360px;height:360px;border-radius:50%;filter:blur(0px);opacity:.35;z-index:-1}body:before{top:-120px;right:-120px;background:radial-gradient(circle,rgba(11,148,136,.35),transparent 70%)}body:after{bottom:-160px;left:-140px;background:radial-gradient(circle,rgba(244,178,102,.5),transparent 70%)}.page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:48px 24px}.shell{width:min(1100px,100%);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:36px;align-items:center}.brand{display:flex;flex-direction:column;gap:18px;animation:floatIn .8s ease forwards}.brand h1{font-family:Fraunces,Georgia,serif;font-size:clamp(32px,4vw,48px);margin:0;line-height:1.1}.brand p{margin:0;font-size:16px;color:var(--muted);max-width:440px}.card{position:relative;background:var(--card);border-radius:24px;border:1px solid var(--stroke);box-shadow:var(--shadow);overflow:hidden;animation:rise .9s ease forwards}.card__body{padding:32px;display:flex;flex-direction:column;gap:22px}.card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.card__header h2{margin:0 0 8px;font-size:24px}.card__header p{margin:0;color:var(--muted);font-size:14px}.fields{display:grid;gap:16px}.fields--grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field{display:flex;flex-direction:column;gap:8px;font-size:13px;color:var(--muted);animation:fadeUp .4s ease forwards;animation-delay:var(--delay, 0ms);opacity:0}.field span{font-weight:600;color:var(--ink)}input{border-radius:12px;border:1px solid rgba(15,23,42,.12);padding:12px 14px;font-size:14px;font-family:inherit;background:#ffffffe6;color:var(--ink);transition:border .2s ease,box-shadow .2s ease,transform .2s ease}input:focus{outline:none;border-color:#0b948899;box-shadow:0 0 0 3px #0b94882e;transform:translateY(-1px)}input:disabled{background:#f8f8f8cc;color:#14213d80}.button-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}button{border:none;border-radius:12px;padding:12px 18px;font-size:14px;font-family:inherit;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}button:disabled{cursor:not-allowed;opacity:.6;transform:none;box-shadow:none}.primary{background:linear-gradient(135deg,var(--teal),#0fb9a7);color:#fff;font-weight:600;box-shadow:0 12px 24px #0b948840}.primary:hover:not(:disabled){transform:translateY(-1px)}.secondary{background:#14213d14;color:var(--ink);font-weight:600}.inline-link,.ghost-button{background:transparent;padding:0;font-weight:600;color:var(--teal-deep)}.inline-link:hover:not(:disabled){text-decoration:underline}.ghost-button{font-size:12px;text-transform:uppercase}.progress{position:absolute;top:0;left:0;width:100%;height:4px;background:#0b94881a;overflow:hidden}.progress__bar{width:40%;height:100%;background:linear-gradient(90deg,var(--teal),var(--sun));animation:progressMove 1.2s ease-in-out infinite}.popup-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#14213d59;display:flex;align-items:center;justify-content:center;padding:24px;z-index:20}.popup{width:min(420px,100%);background:#fff;border-radius:18px;border:1px solid rgba(15,23,42,.08);box-shadow:0 24px 50px #0f172a40;padding:20px;display:flex;flex-direction:column;gap:14px}.popup--success{border-top:4px solid var(--teal)}.popup--error{border-top:4px solid var(--rose)}.popup__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.popup__title{font-weight:700;font-size:16px}.popup__body{display:flex;align-items:center;flex-wrap:wrap;gap:6px;color:var(--muted);font-size:14px}@keyframes rise{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes floatIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}0%{opacity:0;transform:translateY(10px)}}@keyframes progressMove{0%{transform:translate(-60%)}50%{transform:translate(80%)}to{transform:translate(200%)}}@media (max-width: 980px){.shell{grid-template-columns:1fr}.brand{text-align:left}}@media (max-width: 720px){.fields--grid{grid-template-columns:1fr}.card__body{padding:24px}}
