@charset "UTF-8";
:root{color-scheme:light;--green:#157d68;--ink:#203a31;--muted:#8b9c92;--line:#dfe8e1;font-family:"Segoe UI","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}body{margin:0;background:#f5f7f5;color:var(--ink);font-size:14px;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a7d6bf;outline-offset:3px}
.login-screen{display:grid;place-items:center;min-height:100vh;padding:35px 22px}
.login-card{width:100%;max-width:388px;padding:35px 34px 32px;border:1px solid #e1e9e3;box-shadow:0 14px 56px #1d49340a;border-radius:17px;background:#fff}
.login-mark{width:38px;height:38px;display:grid;grid-template-columns:repeat(2,5px);grid-template-rows:repeat(2,5px);gap:4px;align-content:center;justify-content:center;background:#eaf4ed;border-radius:11px;margin-bottom:21px}.login-mark span{background:#408a6c;border-radius:1px}
.login-card h1{font-size:26px;letter-spacing:.3px;font-weight:650;line-height:1.4;margin:0 0 28px;color:#213e32}
.login-card>label{display:block;font-size:12px;color:#61776b;margin:18px 0 8px}
.login-card input,.login-card select{display:block;width:100%;height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:#fbfcfb;color:#294334;font-size:13px}
.login-card input::placeholder{color:#a6b1a9;font-size:12px}.login-card input:focus,.login-card select:focus{border-color:#76a68d;background:#fff;outline:3px solid #edf5ef;outline-offset:0}
.login-card select{appearance:auto;padding-right:8px;color:#657d6d;font-size:12px}
.password-field{position:relative}.password-field input{padding-right:58px}.password-toggle{position:absolute;right:6px;top:5px;height:34px;padding:0 8px;border:0;border-radius:5px;font-size:11px;color:#78917f;background:transparent}.password-toggle:hover{background:#edf5ef}
.error-text{min-height:18px;font-size:11px;color:#b16c52;line-height:1.6;margin:12px 0 9px;overflow-wrap:anywhere}
.primary{display:flex;width:100%;align-items:center;justify-content:space-between;border:1px solid var(--green);border-radius:7px;padding:12px 14px;font-size:12px;font-weight:550;color:#fff;background:var(--green);transition:background .15s}.primary:hover{background:#116d5a}.primary:active{transform:translateY(1px)}
@media(max-width:420px){.login-screen{padding:26px 22px}.login-card{padding:30px 26px 28px}.login-card h1{font-size:24px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
