*{box-sizing:border-box}body{margin:0;font-family:"Noto Sans KR","Malgun Gothic",sans-serif;background:#f7f9f7;color:#233d32}.login-shell{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.login-story{padding:48px 65px 30px;background:radial-gradient(ellipse at 20% 80%,#2e7955,transparent 65%),linear-gradient(145deg,#153f32,#245a41);color:white;display:flex;flex-direction:column}.login-brand{font-size:23px;font-weight:750;letter-spacing:2px;color:white;text-decoration:none;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.login-brand b{font-size:41px;color:#b0dfbd;line-height:1}.login-brand span{font-size:9px;letter-spacing:2px;width:100%;padding-left:40px;color:#8eb8a0}.story-copy{margin:auto 0;padding:75px 0;max-width:550px}.story-copy>small{font-size:11px;letter-spacing:2px;color:#9cccb0}.story-copy h1{font-size:38px;line-height:1.65;letter-spacing:-1px;margin:22px 0}.story-copy>p{font-size:16px;line-height:2;color:#b5d0c0}.story-graphic{margin-top:40px;border:1px solid #ffffff20;border-radius:15px;padding:25px;background:#ffffff08;box-shadow:0 15px 40px #00201420}.graphic-top{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.7px;color:#b0d0bd}.graphic-top i{color:#a1d9ac;font-size:8px}.story-graphic svg{width:100%;height:110px;display:block;margin:25px 0 18px}.graphic-tags{display:flex;gap:8px;flex-wrap:wrap}.graphic-tags span{font-size:11px;border:1px solid #ffffff25;padding:6px 9px;border-radius:6px;color:#b2d8bf}.story-footer{font-size:10px;letter-spacing:1.5px;color:#82ac93}.login-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:55px 45px;position:relative}.login-card{width:100%;max-width:415px}.login-eyebrow{font-size:11px;font-weight:750;letter-spacing:2px;color:#579679}.login-card h2{font-size:29px;letter-spacing:-.8px;margin:15px 0}.login-description{font-size:14px;line-height:1.9;color:#849489;margin-bottom:33px}form>label{display:block;font-size:13px;font-weight:650;margin:22px 0 10px}input:not([type=checkbox]){width:100%;height:52px;border:1px solid #d8e3db;border-radius:8px;background:#fff;padding:0 15px;font-size:16px;color:#294335;outline:none}input:focus{border-color:#4b9876;box-shadow:0 0 0 3px #38815b15}input::placeholder{font-size:13px;color:#adb8af}.password-field{position:relative}.password-field input{padding-right:65px}.password-field button{position:absolute;right:9px;top:10px;padding:8px;border:0;background:transparent;color:#6e8978;font-size:12px;cursor:pointer}.login-options{display:flex;gap:24px;margin-top:22px;font-size:13px;color:#678171}.login-options label{display:flex;align-items:center;gap:5px;cursor:pointer}input[type=checkbox]{width:16px;height:16px;accent-color:#277956}.login-note{font-size:11px;line-height:1.85;color:#a0aca3;margin:15px 0 22px}.login-submit{display:flex;justify-content:center;gap:18px;align-items:center;width:100%;height:53px;border:0;border-radius:8px;background:#247a55;color:#fff;font-size:16px;font-weight:650;cursor:pointer;box-shadow:0 6px 14px #31795418}.login-submit:hover{background:#1c6847}.login-submit:disabled{opacity:.65;cursor:wait}.login-submit span{font-size:21px;font-weight:400}#login-error{color:#b44b3d;background:#fff1ed;border-radius:7px;font-size:13px;line-height:1.8}#login-error:not(:empty){padding:11px 14px;margin:15px 0}.login-security{display:flex;gap:12px;align-items:flex-start;border-top:1px solid #e0e8e1;margin-top:28px;padding-top:22px;color:#94a69a}.login-security>span{font-size:23px;color:#7fa18b}.login-security p{font-size:11px;line-height:1.9;margin:0}.login-panel>footer{font-size:10px;color:#b0bab2;position:absolute;bottom:25px;padding:0 15px;text-align:center}@media(max-width:1000px){.login-story{padding:35px}.story-copy h1{font-size:29px}.login-panel{padding:45px 30px}}@media(max-width:720px){.login-shell{grid-template-columns:1fr}.login-story{padding:25px 30px}.story-copy{padding:25px 0 0}.story-copy h1{font-size:25px;margin:12px 0}.story-copy>p,.story-graphic,.story-footer,.story-copy>small{display:none}.login-brand{font-size:17px}.login-brand b{font-size:30px}.login-brand span{display:none}.login-panel{padding:40px 25px 70px}.login-card h2{font-size:25px}.login-panel>footer{bottom:20px}}
