*,*:before,*:after{box-sizing:border-box}body{margin:0;overflow:hidden;background:#fff;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}:root{--text: #0f172a;--muted: #64748b;--border: #e5e7eb;--primary: #0b3a63;--primary2: #082d4d;--radius: 10px}.auth{position:fixed;inset:0;width:100vw;height:100vh;display:grid;grid-template-columns:50vw 50vw;overflow:hidden;background:#fff;z-index:999}.auth-left,.auth-right{min-width:0;min-height:0}.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:10px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#64748b}.password-toggle:hover{background:#0f172a0f;color:#0f172a}.auth-panel{width:100%;height:100%;padding:clamp(32px,4vw,64px);display:flex;align-items:center;justify-content:center}.auth-card{width:100%;max-width:640px;color-scheme:light}.auth-logo{width:150px;display:block;margin-bottom:18px}.auth-title{margin:0 0 18px;font-size:36px;line-height:1.15;font-weight:900;color:var(--text)}.btn{width:100%;height:52px;border-radius:var(--radius);font-weight:800;cursor:pointer;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:10px}.btn-sso{background:#fff;border-color:var(--border);color:var(--text)}.btn-sso:hover{background:#f8fafc}.btn-primary{border:0;background:linear-gradient(180deg,var(--primary),var(--primary2));color:#fff}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:18px 0;color:var(--muted);font-size:12px}.divider:before,.divider:after{content:"";height:1px;background:var(--border)}.divider span{padding:0 6px}.form{display:grid;gap:14px}.field{display:grid;gap:8px}.field label{font-size:13px;font-weight:900;color:var(--text)}.input{width:100%;height:52px;padding:0 14px;border-radius:var(--radius);border:1px solid var(--border);background:#fff!important;color:#0f172a!important;-webkit-text-fill-color:#0f172a;caret-color:#0f172a;font-size:15px;outline:none;appearance:none}.input::placeholder{color:#94a3b8!important;opacity:1}.input:focus{border-color:#0b3a638c;box-shadow:0 0 0 5px #0b3a631f}.input:-webkit-autofill,.input:-webkit-autofill:hover,.input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px #ffffff inset!important;-webkit-text-fill-color:#0f172a!important}.row{display:flex;justify-content:flex-end;margin-top:-6px}.link{border:0;background:transparent;color:var(--primary);font-weight:900;cursor:pointer;padding:6px 0;font-size:13px}.link:hover{text-decoration:underline}.error{background:#dc262614;border:1px solid rgba(220,38,38,.22);color:#dc2626;padding:10px 12px;border-radius:var(--radius);font-size:14px}.auth-right{min-width:0;height:100%;overflow:hidden}.bg{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.password-wrap{position:relative;width:100%}.input-password{padding-right:48px}.password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:38px;height:38px;border-radius:10px;border:1px solid transparent;background:transparent;cursor:pointer;display:grid;place-items:center;font-size:16px;line-height:1;opacity:.9}.password-toggle:hover{background:#0f172a0f}@media(max-width:1024px){body{overflow:hidden}.auth{grid-template-columns:1fr}.auth-right{display:none}.auth-panel{padding:0;display:flex;align-items:center;justify-content:center}.auth-card{width:80vw;max-width:80vw;margin:0 auto}.auth-logo{margin:0 auto 14px;width:140px}.auth-title{text-align:center;font-size:28px;margin:0 0 14px}.btn,.input{height:50px;border-radius:10px;font-size:14px}.field label{font-size:12px}.divider{margin:14px 0}.password-toggle{width:36px;height:36px}.input-password{padding-right:46px}}@media(max-width:600px){.auth-card{width:92vw;max-width:92vw;margin:0 auto}.auth-logo{width:120px}.auth-title{font-size:24px}.btn,.input{height:48px;font-size:14px}.password-toggle{width:34px;height:34px}.input-password{padding-right:44px}}@media(min-width:600px)and (max-width:1024px){.auth-card{margin-top:-250px}}html,body,#root{height:100%}body{margin:0}*{box-sizing:border-box}
