@import url('/assets/global-modern.css?v=3');
:root{--cyan:#10bdda;--cyan-dark:#0798b6;--navy:#071b2b;--ink:#0c1725;--muted:#687487;--line:#dfe5ec}
*{box-sizing:border-box}
html,body{min-height:100%}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:#fff}
.login-shell{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}
.identity{position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#061521 0%,#09283d 64%,#087f96 150%)}
.identity:before{content:"";position:absolute;width:620px;height:620px;border:1px solid #fff1;border-radius:50%;box-shadow:0 0 0 90px #ffffff08,0 0 0 180px #ffffff06}
.identity:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 18%,#20c7dd28,transparent 28%),linear-gradient(120deg,transparent 48%,#ffffff08 48%,#ffffff08 49%,transparent 49%)}
.home-link{position:relative;z-index:1;display:flex;align-items:center;gap:20px;color:#fff;text-decoration:none;filter:drop-shadow(0 12px 24px #00101f66)}
.brand-mark{font-size:92px;font-weight:950;font-style:italic;letter-spacing:-14px;line-height:.8}
.brand-name{font-size:32px;font-weight:950;line-height:.82;letter-spacing:-1px}
.form-side{position:relative;display:flex;flex-direction:column;padding:38px clamp(35px,7vw,105px);background:#fff}
.back{align-self:flex-end;color:#586579;font-size:14px;text-underline-offset:3px}
.form-wrap{width:min(440px,100%);margin:auto}
.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--cyan-dark);font-size:12px;font-weight:850;letter-spacing:2px}
.eyebrow:before{content:"";width:18px;height:3px;border-radius:3px;background:var(--cyan)}
.form-wrap h1{font-size:36px;line-height:1.12;margin:12px 0 8px}
.intro{color:var(--muted);line-height:1.5;margin:0 0 28px}
.form-wrap form>label{display:grid;gap:8px;margin:18px 0;font-size:14px;font-weight:700}
.field{height:52px;border:1px solid var(--line);border-radius:11px;display:flex;align-items:center;padding:0 14px;background:#fff;transition:.2s}
.field:hover{border-color:#b8c5d1}
.field:focus-within{border-color:var(--cyan);box-shadow:0 0 0 4px #10bdda18}
.field i{font-style:normal;color:#7a8594}
.field input{flex:1;min-width:0;height:100%;border:0;outline:0;padding:0 11px;font-size:15px;background:transparent}
.field button{border:0;background:none;color:#687487;font-size:17px;cursor:pointer}
.options{display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:13px}
.remember{display:flex;align-items:center;gap:7px;white-space:nowrap}
.options a,.request a{color:var(--cyan-dark);font-weight:750;text-underline-offset:2px}
.submit{margin-top:22px;width:100%;border:0;border-radius:11px;background:linear-gradient(100deg,#079fbe,#20c7dd);color:#fff;padding:15px 18px;font-weight:850;font-size:16px;display:flex;justify-content:center;gap:18px;box-shadow:0 12px 25px #10bdda35;cursor:pointer}
.submit:hover{filter:brightness(.96)}
.divider{margin:28px 0 12px;display:flex;align-items:center;color:#8a94a2;font-size:12px}
.divider:before,.divider:after{content:"";height:1px;background:var(--line);flex:1}
.divider span{padding:0 12px}
.request{text-align:center;color:var(--muted);font-size:13px;line-height:1.5}
.legal{text-align:center;color:#98a0ac;font-size:11px}
.error,.success{padding:12px;border-radius:8px;font-size:13px}
.error{background:#fff0f1;color:#b41f2e}
.success{background:#e8f9ef;color:#087a3e}
@media(max-width:760px){.login-shell{display:block;min-height:100svh}
.identity{height:132px;border-radius:0 0 28px 28px}
.identity:before{width:250px;height:250px;box-shadow:0 0 0 45px #ffffff08}
.home-link{gap:11px}
.brand-mark{font-size:52px;letter-spacing:-8px}
.brand-name{font-size:18px}
.form-side{min-height:calc(100svh - 132px);padding:32px 22px calc(18px + env(safe-area-inset-bottom))}
.back{position:absolute;top:-104px;right:20px;color:#fff;font-size:12px}
.form-wrap{margin:0 auto}
.eyebrow{font-size:11px}
.form-wrap h1{font-size:29px;margin-top:10px}
.intro{font-size:15px;margin-bottom:22px}
.field{height:52px}
.options{font-size:12px}
.legal{margin-top:auto;padding-top:22px}
}
@media(max-width:390px){.form-side{padding-left:18px;padding-right:18px}
.options{align-items:flex-start;flex-direction:column}
.options a{align-self:flex-end;margin-top:-22px}
.form-wrap h1{font-size:27px}
}
