*{box-sizing:border-box}html{font-family:system-ui,-apple-system,"Noto Sans KR",sans-serif;color:#18314a;background:#f5f7f3}body{margin:0;min-height:100vh}.login-layout{max-width:1080px;margin:auto;min-height:100vh;display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:64px;align-items:center;padding:60px 26px}.identity{padding:28px 0}.brand-mark{width:68px;height:68px;object-fit:contain}.eyebrow{font-size:11px;letter-spacing:.17em;color:#4b8b68;font-weight:800;margin:20px 0 12px}.identity h1{font-size:clamp(32px,4.3vw,53px);letter-spacing:-.045em;line-height:1.22;margin:14px 0 24px}.intro{color:#566c72;line-height:1.95;font-size:16px;max-width:430px}.secure-note{font-size:13px;color:#47615e;margin-top:42px}.secure-note span{color:#2c8a5a}.login-card{background:#fff;border:1px solid #e0e8e2;box-shadow:0 20px 54px #22392a14;border-radius:22px;padding:43px 40px 32px;max-width:460px;width:100%;justify-self:end}.login-card .eyebrow{margin-top:0}.login-card h2{font-size:30px;letter-spacing:-.035em;margin:5px 0}.subtitle{font-size:14px;color:#647770;margin:0 0 30px}label{display:block;margin:17px 0 8px;font-size:13px;font-weight:700}input{width:100%;padding:13px 14px;border:1px solid #c8d5ce;border-radius:10px;font:inherit;font-size:15px;background:#fff;color:#193c36}input:focus-visible,button:focus-visible{outline:3px solid #91c0a4;outline-offset:2px}button{width:100%;border:0;background:#176a47;color:#fff;font:inherit;font-weight:750;font-size:15px;padding:15px;border-radius:10px;margin:24px 0 2px;cursor:pointer}button:disabled{cursor:wait;opacity:.65}button:hover:not(:disabled){background:#105338}.login-status{min-height:1.45em;color:#486d57;font-size:13px;line-height:1.6}.login-status.error{color:#ad3030}.hint{color:#65776d;font-size:12px;line-height:1.8;margin:27px 0 0}.footnote{font-size:11px;color:#9aa7a0;margin-top:25px;border-top:1px solid #e8eeea;padding-top:18px}@media(max-width:750px){.login-layout{grid-template-columns:1fr;gap:16px;padding:32px 22px 46px;align-items:start}.identity{padding:0}.identity h1{font-size:30px;margin-bottom:12px}.identity .intro{font-size:14px}.secure-note{margin-top:16px}.login-card{justify-self:stretch;max-width:none;padding:30px 24px}}
