*{box-sizing:border-box}
:root{color-scheme:light;--green:#1c513f;--ink:#22382f;--muted:#63716a;--line:#dfe6e1}
body{margin:0;min-height:100dvh;display:grid;place-items:center;padding:32px 20px;background:#f4f6f5;color:var(--ink);font-family:'Apple SD Gothic Neo','Malgun Gothic',sans-serif;line-height:1.6}
main{width:100%;max-width:430px;padding:36px 40px 40px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 16px 48px #153b2b08}
.login-brand{display:flex;justify-content:center;padding-bottom:27px;margin-bottom:27px;border-bottom:1px solid var(--line)}
.login-brand img{display:block;width:122px;height:auto}
.login-heading{text-align:center}
.login-eyebrow{color:#587465;font-size:10px;font-weight:700;letter-spacing:1.6px}
h1{margin:5px 0 8px;font-size:24px;font-weight:700;letter-spacing:-.8px}
p{margin:0;color:var(--muted);font-size:13px;text-align:center;word-break:keep-all}
form{display:grid;gap:17px;margin-top:27px}
label{display:block;font-size:13px;font-weight:700}
input{display:block;width:100%;margin-top:7px;padding:12px 13px;border:1px solid #cdd9d1;border-radius:7px;background:#fff;color:var(--ink);font:16px/1.5 'Apple SD Gothic Neo','Malgun Gothic',sans-serif;transition:border-color .15s,box-shadow .15s}
input:focus{outline:2px solid #477860;outline-offset:2px}
button{min-height:48px;margin-top:6px;border:0;border-radius:7px;background:var(--green);color:white;font:700 15px/1.5 'Apple SD Gothic Neo','Malgun Gothic',sans-serif;cursor:pointer;transition:background .15s}
button:hover{background:#153f30}button:focus-visible{outline:2px solid #477860;outline-offset:3px}
.error{margin-top:14px;color:#9a3d30;text-align:left;padding:10px 12px;border-radius:6px;background:#fcf1ed}
@media(max-width:480px){body{padding:20px 16px}main{padding:28px 25px 30px}.login-brand{padding-bottom:22px;margin-bottom:22px}.login-brand img{width:107px}h1{font-size:23px}form{margin-top:24px}}
@media(prefers-reduced-motion:reduce){input,button{transition:none}}
