.auth{--deep:#08404f;--teal7:#0e5663;--teal:#14808f;--green:#22c55e;--green2:#46e08a;--amber:#f0a310;--red:#e44;--ink:#0a1527;--slate:#5b6b79;--mute:#7c8a98;--canvas:#f1f4f9;--surface:#fff;--line:#e3e9f0;--line2:#edf1f6;--tint:#ecf6f5;min-height:100svh;font-family:var(--font-sans), system-ui, sans-serif;color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;line-height:1.5}.auth :is(h1,h2,h3){font-family:var(--font-poppins), sans-serif;letter-spacing:-.02em;line-height:1.14}.auth .mono{font-family:var(--font-mono), monospace}.auth a{color:var(--teal);text-decoration:none}.auth :focus-visible{outline:2.5px solid var(--teal);outline-offset:2px;border-radius:6px}.auth .wrap{flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:40px 20px;display:flex;position:relative;overflow:hidden}.auth .wrap:before{content:"";z-index:0;background:radial-gradient(120% 150% at 50% -40%,#15707f 0%,#0e566329 45%,#0000 72%);height:340px;position:absolute;top:0;left:0;right:0}.auth .stack{z-index:1;flex-direction:column;align-items:center;width:100%;max-width:428px;display:flex;position:relative}.auth .tbrand{text-align:center;flex-direction:column;align-items:center;margin-bottom:22px;display:flex}.auth .tbrand .mark{background:linear-gradient(135deg, var(--deep), var(--teal));color:#fff;width:56px;height:56px;font-family:var(--font-poppins);border-radius:15px;justify-content:center;align-items:center;margin-bottom:14px;font-size:22px;font-weight:700;display:flex;box-shadow:0 12px 26px -10px #08404f8c}.auth .tbrand .tname{font-family:var(--font-poppins);color:var(--deep);font-size:19px;font-weight:700}.auth .tbrand .ws{font-family:var(--font-mono), monospace;color:var(--slate);align-items:center;gap:6px;margin-top:5px;font-size:12px;display:inline-flex}.auth .tbrand .ws svg{width:12px;height:12px;stroke:var(--teal)}.auth .card{background:var(--surface);border:1px solid var(--line);border-radius:18px;width:100%;padding:30px 30px 28px;box-shadow:0 1px 2px #0a15270a,0 18px 50px -24px #08404f52}.auth .scr{display:none}.auth .scr.on{animation:.3s auth-fade;display:block}@keyframes auth-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.auth .card h1{font-size:21px;font-weight:700}.auth .card .lede{color:var(--slate);margin-top:7px;font-size:14px}.auth .err{color:#b4322f;background:#fdecec;border:1px solid #f6c9c9;border-radius:10px;margin-top:16px;padding:11px 13px;font-size:13px;display:none}.auth .err.show{align-items:flex-start;gap:9px;display:flex}.auth .err svg{stroke:#d0342f;flex:none;width:16px;height:16px;margin-top:1px}.auth .field{margin-top:16px}.auth .field label{color:#334155;margin-bottom:7px;font-size:13px;font-weight:600;display:block}.auth .field .flabel{justify-content:space-between;align-items:baseline;display:flex}.auth .field .flabel a{font-size:12.5px;font-weight:600}.auth .inp{width:100%;font-family:var(--font-sans);color:var(--ink);border:1.5px solid var(--line);background:#fff;border-radius:11px;padding:13px 14px;font-size:15px;transition:border .15s,box-shadow .15s}.auth .inp::placeholder{color:#a9b4c0}.auth .inp:focus{border-color:var(--teal);outline:none;box-shadow:0 0 0 4px #14808f1f}.auth .inp.bad{border-color:var(--red);box-shadow:0 0 0 4px #ee44441a}.auth .pwrap{position:relative}.auth .pwrap .toggle{cursor:pointer;color:var(--mute);background:0 0;border:none;font-size:12px;font-weight:600;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.auth .remember{color:var(--slate);align-items:center;gap:10px;margin-top:16px;font-size:13.5px;display:flex}.auth .remember input{width:16px;height:16px;accent-color:var(--teal)}.auth .btn{font-family:var(--font-sans);cursor:pointer;border:1.5px solid #0000;border-radius:11px;justify-content:center;align-items:center;gap:9px;width:100%;padding:13px 20px;font-size:15px;font-weight:600;transition:transform .14s,box-shadow .2s,background .2s;display:inline-flex}.auth .btn:hover{transform:translateY(-1px)}.auth .btn:disabled{cursor:default;opacity:.85;transform:none}.auth .btn.primary{background:linear-gradient(135deg, var(--green), #16a34a);color:#fff;box-shadow:0 10px 22px -8px #22c55e80}.auth .btn.outline{color:var(--deep);border-color:var(--line);background:#fff}.auth .btn.outline:hover{border-color:var(--teal);color:var(--teal)}.auth .btn.outline svg{width:17px;height:17px}.auth .btnrow{margin-top:20px}.auth .btnspin{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite auth-spin;display:inline-block}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth .divider{color:var(--mute);letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:12px;margin:18px 0;font-size:12px;font-weight:600;display:flex}.auth .divider:before,.auth .divider:after{content:"";background:var(--line);flex:1;height:1px}.auth .below{text-align:center;color:var(--slate);margin-top:18px;font-size:13.5px}.auth .bigicon{background:var(--tint);border-radius:14px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:18px;display:flex}.auth .bigicon svg{width:27px;height:27px;stroke:var(--teal)}.auth .emailpill{color:var(--deep);background:var(--canvas);border:1px solid var(--line);border-radius:8px;padding:3px 9px;font-size:13.5px;font-weight:600;display:inline-block}.auth .note{background:var(--tint);color:#2f5b5c;border:1px solid #d5e7e6;border-radius:11px;margin-top:18px;padding:12px 14px;font-size:12.5px}.auth .ssoscr{text-align:center;padding:8px 0}.auth .ssoscr .spinner{border:4px solid var(--line2);border-top-color:var(--teal);border-radius:50%;width:46px;height:46px;margin:4px auto 20px;animation:.8s linear infinite auth-spin}.auth .poweredby{color:var(--mute);justify-content:center;align-items:center;gap:8px;margin-top:22px;font-size:12px;display:flex}.auth .poweredby svg{width:18px;height:18px}.auth .poweredby b{color:var(--slate);font-weight:600}.auth .securenote{color:var(--mute);justify-content:center;align-items:center;gap:6px;margin-top:10px;font-size:11.5px;display:flex}.auth .securenote svg{width:12px;height:12px;stroke:var(--green)}@media (max-width:460px){.auth .card{padding:24px 20px}}
