:root{--bg:#f6f8fc;--text:#0b1220;--cardBg:#ffffffb8;--cardBorder:#0f172a0f;--btn:#2563eb;--btnHover:#1d4ed8;--background:#fff;--foreground:#0a0a0a;--navy:#0b1b3a;--blue:#2f66ff;--blue2:#4fa1ff;--muted:#0b1b3aa6;--card:#ffffffdb;--line:#0b1b3a1a;--danger:#d92d20;--success:#027a48}html,body,#root{height:100%;margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}body{background:var(--background);color:var(--foreground)}.bg{background:var(--bg);justify-content:center;align-items:center;min-height:100%;display:flex;position:relative;overflow:hidden}.bg:before,.bg:after{content:"";filter:blur(90px);opacity:.9;pointer-events:none;border-radius:999px;width:900px;height:900px;position:absolute}.bg:before{background:radial-gradient(circle at 40% 40%,#2563eb42,#2563eb1a 40%,#0000 70%);top:-420px;left:50%;transform:translate(-55%)}.bg:after{background:radial-gradient(circle at 40% 40%,#7c3aed29,#7c3aed0f 45%,#0000 70%);bottom:-520px;right:-260px}.formCard{background:var(--cardBg);border:1px solid var(--cardBorder);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:24px;flex-direction:column;justify-content:center;width:100%;max-width:360px;padding:26px 24px 20px;display:flex;position:relative;box-shadow:0 30px 80px #0f172a14,0 10px 28px #0f172a0f}.formInner{width:100%;max-width:385px;margin:0 auto}.formTitle{letter-spacing:.2px;color:var(--text);margin:0 0 14px;font-size:22px;font-weight:300}.field{flex-direction:column;gap:8px;margin-top:16px;display:flex}label{color:var(--muted);font-size:13px;font-weight:800}input{width:100%;color:var(--text);background:#ffffffe0;border:1px solid #0b1b3a29;border-radius:16px;outline:none;padding:12px 14px;font-size:15px;transition:all .16s}input:focus{border-color:#2f66ff8c;box-shadow:0 0 0 6px #2f66ff1a}button,.primary{letter-spacing:.2px;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:14px;font-weight:400}.primary{color:#fff;cursor:pointer;background:linear-gradient(#60a5fa 0%,#3b82f6 45%,#1d4ed8 100%);border:1px solid #2563eb47;border-radius:999px;justify-content:center;align-items:center;width:100%;height:44px;transition:transform .16s,box-shadow .16s,filter .16s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 10px 24px #2563eb4d,0 2px 8px #0f172a0f}.primary:before{content:"";pointer-events:none;background:linear-gradient(#ffffff73 0%,#ffffff2e 30%,#ffffff0d 60%,#0000 100%);border-radius:999px;position:absolute;inset:0}.primary:hover{filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 14px 30px #2563eb59,0 4px 12px #0f172a14}.primary:active{filter:brightness(.97);transform:translateY(0)}.primary:focus{outline:none;box-shadow:0 0 0 4px #60a5fa4d,0 14px 30px #2563eb59}.spinner{vertical-align:middle;-webkit-user-select:none;user-select:none;border:2px solid #ffffff80;border-top-color:#fffffff2;border-radius:999px;width:16px;height:16px;animation:.9s linear infinite spin;display:inline-block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:520px){.row{grid-template-columns:1fr}}.btnRow{align-items:center;gap:10px;margin-top:14px;display:flex}.ghost{color:var(--text);background:#0b1b3a0f;border:1px solid #0b1b3a1a}.ghost:hover{background:#0b1b3a14}.miniLink{color:var(--muted);margin-top:12px;font-size:13px}.miniLink button{color:var(--blue);background:0 0;border-radius:10px;padding:0;font-size:13px;font-weight:900}.successCard{color:var(--text);background:#027a481a;border:1px solid #027a4838;border-radius:18px;margin-top:14px;padding:14px;font-size:13px;line-height:1.4}.rememberRow{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.rememberText{color:#0b1b3ac7;font-size:14px;font-weight:700}.switch{cursor:pointer;background:#0b1b3a24;border:1px solid #0b1b3a1a;border-radius:999px;flex-shrink:0;align-items:center;width:44px;height:26px;transition:all .18s;display:inline-flex;position:relative}.switch.on{background:linear-gradient(135deg,var(--blue2),var(--blue));box-shadow:0 14px 30px #2f66ff33}.knob{background:#fffffff2;border-radius:999px;width:22px;height:22px;transition:all .18s;transform:translate(2px);box-shadow:0 8px 18px #0b1b3a38}.switch.on .knob{transform:translate(20px)}.switch:focus-visible{outline:none;box-shadow:0 0 0 6px #2f66ff24}
