:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#263445;background:#f1f2f7;font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}[hidden]{display:none!important}
.login-page{min-height:100vh;min-height:100svh;display:grid;place-items:center;padding:40px 20px;background:#f1f2f7}
.login-layout{width:100%;max-width:440px}.login-card{overflow:hidden;border:1px solid #e8ebf0;border-radius:12px;background:#fff;box-shadow:0 12px 40px #26344509}
.login-brand{min-height:94px;display:flex;align-items:center;gap:14px;padding:22px 32px;background:var(--identity-accent,#3bc4be);color:var(--identity-accent-ink,#000);border-bottom:1px solid #00000009}
.login-mark{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border:1.5px solid currentColor;border-radius:50%}.login-mark svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.login-logo{max-width:100px;width:auto;height:auto;max-height:48px;object-fit:contain;flex-shrink:0}.login-name{font-size:22px;font-weight:700;letter-spacing:-.5px;overflow-wrap:anywhere;line-height:1.2;min-width:0}
.login-body{padding:30px 32px 26px}.login-eyebrow{margin:0 0 9px;font-size:10px;letter-spacing:1.8px;color:#637184;font-weight:700}h1{font-size:24px;line-height:1.3;letter-spacing:-.6px;margin:0 0 9px;font-weight:650}.login-description{color:#647083;font-size:14px;line-height:1.6;margin:0 0 28px;overflow-wrap:anywhere;min-height:22px}
.form-group{margin:0 0 20px}label{display:block;font-size:13px;font-weight:600;margin:0 0 8px;color:#394759}input{width:100%;min-height:50px;border:1px solid #dce1e8;border-radius:7px;padding:12px 14px;outline:0;background:#fff;color:#263445;font-size:16px;transition:border-color .15s,box-shadow .15s}input::placeholder{color:#7b8593}input:focus{border-color:#466b85;box-shadow:0 0 0 3px #466b8518}
.password-field{position:relative}.password-toggle{position:absolute;right:4px;top:3px;min-width:76px;min-height:44px;background:transparent;border:0;border-radius:5px;color:#40566b;font-size:12px;font-weight:600}.password-toggle:hover{background:#f1f4f8}.password-toggle:focus-visible,.login-submit:focus-visible{outline:3px solid #2c536f;outline-offset:3px}
.login-submit{width:100%;min-height:52px;margin-top:3px;display:flex;align-items:center;justify-content:center;gap:12px;background:var(--identity-action,#c44c43);color:var(--identity-action-ink,#fff);border:1px solid #00000008;border-bottom:3px solid #0000001a;border-radius:7px;font-size:15px;font-weight:650;transition:filter .15s,transform .15s}.login-submit:hover{box-shadow:0 3px 10px #26344518}.login-submit:active{transform:translateY(1px)}.login-submit:disabled{cursor:wait;opacity:.7}.login-submit svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.login-error{padding:12px 14px;margin-bottom:20px;color:#8f2823;border:1px solid #efc5c1;background:#fff3f1;border-radius:6px;font-size:13px;line-height:1.6}.caps-notice{font-size:12px;color:#8b4b18;margin:8px 0 0}
.login-card-foot{padding:17px 24px;background:#fafbfc;border-top:1px solid #eff1f5;color:#687588;font-size:11px;display:flex;justify-content:center;align-items:center;gap:8px}.login-card-foot svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.login-footer{margin:20px 12px 0;text-align:center;color:#6c7788;font-size:11px;line-height:1.7;overflow-wrap:anywhere}.login-footer span{padding:0 6px}
@media(max-width:480px){.login-page{padding:28px 18px}.login-brand{padding:22px 26px;min-height:86px}.login-body{padding:28px 26px 25px}h1{font-size:23px}.login-name{font-size:21px}}
@media(max-width:350px){.login-page{padding:24px 12px}.login-body,.login-brand{padding-left:20px;padding-right:20px}.login-brand{gap:10px}.login-logo{max-width:72px}.login-card-foot{font-size:10px;padding:16px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
