@import "https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=DM+Sans:wght@300;400;500;600&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--blue-dark:#042c53;--blue-mid:#0c447c;--blue:#185fa5;--blue-light:#e8f1fa;--amber:#ba7517;--amber-light:#fef3c7;--fg:#0f1923;--fg-muted:#5c6a7a;--border:#e2e8f0;--error-bg:#fff1f0;--error:#c0392b;--radius:10px;--card-w:420px}body{color:var(--fg);-webkit-font-smoothing:antialiased;background:#f5f7fa;min-height:100vh;font-family:DM Sans,system-ui,sans-serif}.page{background:radial-gradient(80% 60% at 20% -10%,oklch(42% .1 243/.08) 0%,#0000 60%),radial-gradient(60% 50% at 80% 110%,oklch(52% .13 60/.06) 0%,#0000 60%),#f5f7fa;justify-content:center;align-items:center;min-height:100vh;padding:2rem 1rem;display:flex;position:relative;overflow:hidden}.bg-pattern{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.bg-cross{color:var(--blue-dark);-webkit-user-select:none;user-select:none;font-family:DM Serif Display,serif;position:absolute;transform:rotate(15deg)}.card{z-index:1;border:1px solid var(--border);width:100%;max-width:var(--card-w);background:#fff;border-radius:20px;padding:2.5rem;position:relative;box-shadow:0 1px 2px #0000000a,0 8px 32px #00000014,inset 0 0 0 1px #fff9}.logo{color:inherit;align-items:center;gap:12px;margin-bottom:2rem;text-decoration:none;display:flex}.logo-icon{background:var(--blue-dark);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-family:DM Serif Display,serif;font-size:20px;display:flex}.logo-title{color:var(--fg);font-family:DM Serif Display,serif;font-size:15px;line-height:1.2}.logo-sub{color:var(--fg-muted);letter-spacing:.04em;font-size:11px;font-weight:500}.header{margin-bottom:1.75rem}.header h1{color:var(--fg);margin-bottom:6px;font-family:DM Serif Display,serif;font-size:2rem;font-weight:400;line-height:1.2}.header p{color:var(--fg-muted);font-size:14px}form{flex-direction:column;gap:16px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.field-row{justify-content:space-between;align-items:center;display:flex}label{color:var(--fg);font-size:13px;font-weight:500}input{border:1.5px solid var(--border);border-radius:var(--radius);color:var(--fg);background:#fafbfc;outline:none;width:100%;padding:10px 14px;font-family:inherit;font-size:14px;transition:border-color .15s,box-shadow .15s}input:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px oklch(42% .1 243/.1)}input::placeholder{color:#b0bac5}.error{background:var(--error-bg);border-radius:var(--radius);color:var(--error);border:1px solid #ffd4d0;padding:10px 14px;font-size:13px;line-height:1.5}.btn-primary{background:var(--blue-dark);color:#fff;border-radius:var(--radius);cursor:pointer;letter-spacing:.01em;border:none;width:100%;margin-top:4px;padding:11px;font-family:inherit;font-size:14px;font-weight:600;transition:background .15s,transform .1s}.btn-primary:hover:not(:disabled){background:var(--blue-mid)}.btn-primary:active:not(:disabled){transform:scale(.99)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-google{border:1.5px solid var(--border);border-radius:var(--radius);width:100%;color:var(--fg);cursor:pointer;background:#fff;justify-content:center;align-items:center;gap:10px;padding:10px;font-family:inherit;font-size:14px;font-weight:500;transition:background .15s,border-color .15s;display:flex}.btn-google:hover:not(:disabled){background:#f9fafb;border-color:#c8d0da}.btn-google:disabled{opacity:.6;cursor:not-allowed}.btn-link{color:var(--blue);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none;transition:color .15s}.btn-link:hover{color:var(--blue-mid);text-decoration:underline}.btn-link.small{font-size:12px}.divider{color:var(--fg-muted);align-items:center;gap:12px;margin:1rem 0;font-size:12px;display:flex}.divider:before,.divider:after{content:"";background:var(--border);flex:1;height:1px}.switch{text-align:center;color:var(--fg-muted);margin-top:1.25rem;font-size:13px}.check-email{text-align:center;padding:1rem 0}.check-icon{margin-bottom:1rem;font-size:2.5rem}.check-email h2{margin-bottom:8px;font-family:DM Serif Display,serif;font-size:1.5rem;font-weight:400}.check-email p{color:var(--fg-muted);margin-bottom:1.5rem;font-size:14px;line-height:1.6}.spinner{border:3px solid var(--border);border-top-color:var(--blue);border-radius:50%;width:32px;height:32px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=480px){.card{border-radius:16px;padding:2rem 1.5rem}.header h1{font-size:1.75rem}}
