.login-page{--blue:#1c7ee3;--blue-deep:#1563b8;--blue-vivid:#2b6cfb;--blue-sky:#5aa9ef;--navy:#0e1d33;--ink:#1c2a3a;--gray:#66748a;--line:#e6ecf5;--white:#fff;--kakao:#fee500;color:var(--ink);background:var(--white);flex-direction:column;min-height:100vh;font-family:Pretendard,Apple SD Gothic Neo,Malgun Gothic,system-ui,sans-serif;display:flex}.login-page *,.login-page :before,.login-page :after{box-sizing:border-box;margin:0;padding:0}.login-page .bg{z-index:-1;background:radial-gradient(min(760px,53vw) min(480px,53vh) at 88% 0,#1c7ee312,#0000 60%),radial-gradient(min(640px,45vw) min(420px,47vh) at 0 100%,#2b6cfb0d,#0000 55%),#fff;position:fixed;inset:0}.login-page .bg:after{content:"";inset:0;background-image:radial-gradient(#8294aa80 1px,#0000 1px);background-size:clamp(14px,1.8vw,26px) clamp(14px,1.8vw,26px);position:absolute;inset:0;-webkit-mask-image:radial-gradient(min(880px,62vw) min(640px,72vh) at 26%,#000,#0000 78%);mask-image:radial-gradient(min(880px,62vw) min(640px,72vh) at 26%,#000,#0000 78%)}.login-page .wrap{flex:1;justify-content:center;align-items:center;gap:clamp(48px,7vw,110px);padding:56px clamp(20px,5vw,64px);display:flex}.login-page .brand{max-width:560px}.login-page .logo{margin-bottom:18px}.login-page .logo img{width:auto;height:55px;margin:0 auto;display:block}.login-page .eyebrow{color:var(--blue);letter-spacing:.24em;justify-content:center;align-items:center;gap:12px;margin-bottom:35px;font-size:14.5px;font-weight:400;display:flex}.login-page .eyebrow:before,.login-page .eyebrow:after{content:"";background:var(--blue);border-radius:2px;width:34px;height:1px}.login-page h1{color:var(--navy);letter-spacing:-.02em;text-align:center;margin-bottom:18px;font-size:clamp(36px,3.8vw,52px);font-weight:500;line-height:1.3}.login-page h1 b{background:linear-gradient(120deg,var(--blue-vivid),var(--blue));color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:700}.login-page .sub{color:var(--blue);word-break:keep-all;margin-bottom:15px;font-size:18px;line-height:1.4}.login-page .svc-row{border-bottom:1px solid var(--line);align-items:center;gap:20px;padding:15px 0;transition:transform .18s;display:flex}.login-page .src-last{border:0}.login-page .svc-row:hover{transform:translate(4px)}.login-page .svc-row .ic{border-radius:50%;flex:none;justify-content:center;align-items:center;width:75px;height:75px;padding:8px;display:flex;overflow:hidden}.login-page .svc-row .ic img,.login-page .svc-row .ic svg{width:100%;display:block}.login-page .svc-row h3{color:var(--navy);letter-spacing:-.01em;white-space:nowrap;margin-bottom:7px;font-size:20px;font-weight:600}.login-page .svc-row p{color:var(--gray);white-space:nowrap;font-size:16.5px}.login-page .svc-row .num{color:#c3cfdf;letter-spacing:.08em;margin-left:auto;font-size:14px;font-weight:700}.login-page .card{background:var(--white);border:1px solid var(--line);border-radius:24px;flex:none;width:min(420px,100%);padding:44px 36px 34px;position:relative;overflow:hidden;box-shadow:0 28px 60px #0e1d331f,0 2px 8px #0e1d330a}.login-page .card:before{content:"";background:linear-gradient(90deg,var(--blue-vivid),var(--blue-sky));height:6px;position:absolute;top:0;left:0;right:0}.login-page .card h2{text-align:center;color:var(--navy);letter-spacing:.01em;margin-bottom:8px;font-size:27px;font-weight:500}.login-page .card .card-sub{text-align:center;color:var(--gray);margin-bottom:26px;font-size:15px}.login-page .field{background:#f3f6fb;border:1.5px solid #0000;border-radius:999px;align-items:center;gap:11px;height:54px;margin-bottom:12px;padding:0 22px;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.login-page .field:focus-within{border-color:var(--blue);background:#fff;box-shadow:0 0 0 3px #1c7ee324}.login-page .field svg{stroke:#9aa8bd;fill:none;stroke-width:1.7px;flex:none;width:19px;height:19px}.login-page .field input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:16.5px}.login-page .field input::placeholder{color:#9aa8bd}.login-page .btn-login{cursor:pointer;color:#fff;letter-spacing:.02em;background:linear-gradient(160deg,var(--blue-vivid)0%,var(--blue)100%);border:none;border-radius:999px;width:100%;height:54px;margin:6px 0 14px;font-family:inherit;font-size:18px;font-weight:700;transition:filter .15s,transform .1s;box-shadow:0 2px 11px #1c7ee352}.login-page .btn-login:hover{filter:brightness(1.06)}.login-page .btn-login:active{transform:translateY(1px)}.login-page .form-row{color:var(--gray);justify-content:space-between;align-items:center;margin-bottom:26px;padding:0 6px;font-size:15px;display:flex}.login-page .form-row label{cursor:pointer;align-items:center;gap:7px;display:flex}.login-page .form-row input[type=checkbox]{appearance:none;cursor:pointer;background:#fff;border:1.5px solid #c3cfdf;border-radius:50%;width:16px;height:16px;position:relative}.login-page .form-row input[type=checkbox]:checked{background:var(--blue);border-color:var(--blue)}.login-page .form-row input[type=checkbox]:checked:after{content:"✓";color:#fff;justify-content:center;align-items:center;font-size:10px;font-weight:800;display:flex;position:absolute;inset:0}.login-page .form-row a{color:var(--gray);text-decoration:none}.login-page .form-row a:hover{color:var(--blue)}.login-page .or{color:#9aa8bd;letter-spacing:.06em;align-items:center;gap:12px;margin-bottom:16px;font-size:14px;display:flex}.login-page .or:before,.login-page .or:after{content:"";background:var(--line);flex:1;height:1px}.login-page .contact-note{text-align:center;word-break:keep-all;color:var(--gray);margin-bottom:12px;font-size:15px;line-height:1.7}.login-page .contact-note b{color:var(--navy);font-weight:600}.login-page .btn-kakao{cursor:pointer;color:#000000d9;background:var(--kakao);border:none;border-radius:999px;justify-content:center;align-items:center;gap:9px;width:100%;height:52px;font-family:inherit;font-size:17px;font-weight:700;text-decoration:none;transition:filter .15s;display:flex;box-shadow:0 8px 18px #f7c60040}.login-page .btn-kakao:hover{filter:brightness(.97)}.login-page .btn-kakao svg{width:19px;height:18px}.login-page .float-kakao{z-index:20;background:var(--kakao);border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;transition:transform .15s;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 8px 22px #0000002e}.login-page .float-kakao:hover{transform:scale(1.06)}.login-page .float-kakao svg{width:26px;height:24px}.login-page .modal-back{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background:#0e1d3373;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}.login-page .modal-back.show{display:flex}.login-page .modal{text-align:center;background:#fff;border-radius:20px;width:min(360px,100%);padding:34px 28px 24px;box-shadow:0 24px 60px #0e1d3340}.login-page .modal .m-ic{background:#1c7ee31a;border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;margin:0 auto 14px;display:flex}.login-page .modal .m-ic svg{width:22px;height:22px;stroke:var(--blue);fill:none;stroke-width:1.8px}.login-page .modal h4{color:var(--navy);margin-bottom:10px;font-size:20px;font-weight:700}.login-page .modal p{color:var(--gray);margin-bottom:20px;font-size:16px;line-height:1.75}.login-page .modal .btn-kakao{height:46px;margin-bottom:10px;font-size:15px}.login-page .modal .close{color:#9aa8bd;cursor:pointer;text-underline-offset:3px;background:0 0;border:none;font-family:inherit;font-size:14px;text-decoration:underline}@media (max-width:920px){.login-page .wrap{flex-direction:column;gap:25px;padding:48px 20px 72px}.login-page .brand{max-width:520px}.login-page .svc-list{padding:25px 0 5px}.login-page .svc-row{gap:10px;padding:0}.login-page .svc-row .ic{width:56px;height:56px}.login-page .svc-row h3{margin:0;font-size:17px;font-weight:400}.login-page .svc-row p{display:none}.login-page .logo{margin-bottom:20px}.login-page .logo img{height:44px}.login-page .eyebrow{margin-bottom:22px;font-size:13px}.login-page h1{margin-bottom:0;font-size:27px}}@media (max-width:560px){.login-page .svc-row h3,.login-page .svc-row p{white-space:normal;word-break:keep-all}.login-page .svc-row .num{display:none}.login-page .card{padding:36px 24px 28px}}
