:root{--primary:#0b6f5b;--primary-dark:#075447;--primary-soft:#eaf6f3;--mint:#f2faf8;--navy:#10273f;--text:#172434;--muted:#687880;--line:#dfe9e6;--bg:#f7faf9;--white:#fff;--danger:#c93434;--success:#16835d;--shadow:0 18px 50px rgba(24,65,56,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Pretendard,"Noto Sans KR","Apple SD Gothic Neo",Arial,sans-serif;color:var(--text);background:var(--bg);line-height:1.55}a{text-decoration:none;color:inherit}button,input,select{font:inherit}.auth-header{height:70px;background:rgba(255,255,255,.96);border-bottom:1px solid #edf2f0;display:flex;align-items:center}.auth-header-inner,.gnb{width:min(1180px,calc(100% - 40px));margin:auto;display:flex;align-items:center;justify-content:space-between}.auth-logo,.gnb-badge{display:inline-flex;align-items:center;justify-content:center;min-width:76px;height:40px;padding:0 14px;border-radius:8px;background:var(--primary);color:#fff;font-weight:850;letter-spacing:.3px}.header-link,.gnb-back{color:var(--primary);font-size:14px;font-weight:750}.login-shell{width:min(1120px,calc(100% - 40px));min-height:calc(100vh - 70px);margin:auto;display:grid;grid-template-columns:1fr 460px;gap:72px;align-items:center;padding:56px 0}.login-intro{padding:20px}.auth-eyebrow{display:inline-flex;padding:8px 12px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:13px;font-weight:750}.login-intro h1{font-size:48px;line-height:1.18;letter-spacing:-2px;color:var(--navy);margin:22px 0 18px}.login-intro h1 strong{color:var(--primary)}.login-intro>p{font-size:17px;color:var(--muted);max-width:550px}.intro-points{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:38px}.intro-points div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.intro-points b{display:block;color:var(--primary);font-size:13px;margin-bottom:7px}.intro-points span{font-size:14px;font-weight:700}.auth-card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:36px}.card-heading h2{font-size:27px;margin:0 0 7px;color:var(--navy)}.card-heading p{font-size:14px;color:var(--muted);margin:0 0 28px}.field{margin-bottom:17px}.field label{display:block;font-size:13px;font-weight:750;margin-bottom:7px}.field input,.field select{width:100%;height:50px;border:1.5px solid var(--line);border-radius:11px;padding:0 14px;background:#fbfdfc;color:var(--text);outline:none;transition:.18s}.field input:focus,.field select:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 3px rgba(11,111,91,.10)}.pw-wrap{position:relative}.pw-wrap input{padding-right:58px}.pw-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--primary);font-size:12px;font-weight:800;cursor:pointer}.opt-row{display:flex;justify-content:space-between;align-items:center;margin:4px 0 22px;gap:10px}.remember{font-size:13px;color:var(--muted);display:flex;gap:7px;align-items:center}.remember input{accent-color:var(--primary)}.find-link{font-size:13px;color:var(--primary);font-weight:750}.btn-primary,.btn-secondary{height:52px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;cursor:pointer}.btn-primary{border:0;background:var(--primary);color:#fff;box-shadow:0 7px 18px rgba(11,111,91,.20)}.btn-primary:hover{background:var(--primary-dark)}.btn-secondary{border:1.5px solid #9ec9bf;background:#fff;color:var(--primary)}.btn-block{width:100%}.divider{display:flex;align-items:center;gap:12px;color:#8a969b;font-size:12px;margin:22px 0}.divider:before,.divider:after{content:"";height:1px;background:var(--line);flex:1}.alert{display:none;margin-top:14px;padding:12px 14px;border-radius:10px;font-size:13px;font-weight:700}.alert.err{display:block;background:#fff2f2;color:#a52929;border:1px solid #f1caca}.alert.ok{display:block;background:#eefaf5;color:#146b4e;border:1px solid #c4e7d9}.spin{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
/* Signup compatibility */
.gnb{height:70px}.gnb-logo{display:flex;align-items:center;gap:10px}.gnb-name{font-weight:850;color:var(--primary-dark)}.gnb-sub{font-size:11px;color:var(--muted)}.hero{background:linear-gradient(135deg,#f6fbfa,#e9f6f3);padding:34px 20px;border-bottom:1px solid #e8f0ed}.hero-inner,.wrap{max-width:820px;margin:auto}.hero h1{font-size:30px;color:var(--navy);margin:0 0 7px}.hero p{color:var(--muted);margin:0}.steps{display:flex;align-items:center;margin-top:22px;max-width:430px}.step{display:flex;flex-direction:column;align-items:center;gap:5px;font-size:11px;color:#71817e;flex:0 0 auto}.step-num{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--primary);color:#fff;font-weight:800}.step-line{height:1px;background:#b8d4cd;flex:1;margin:0 8px 17px}.wrap{padding:28px 18px 70px}.sec{background:#fff;border:1px solid var(--line);border-radius:17px;padding:26px;margin-bottom:16px;box-shadow:0 5px 18px rgba(24,65,56,.04)}.sec-title{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:850;color:var(--navy);border-bottom:1px solid #e9efed;padding-bottom:14px;margin-bottom:20px}.sec-title-icon{width:34px;height:34px;border-radius:9px;background:var(--primary-soft);display:grid;place-items:center}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.full{grid-column:1/-1}.req{color:var(--danger)}.hint{font-size:11px;color:var(--muted);margin-top:5px}.err-text{display:none;font-size:11px;color:var(--danger);font-weight:700;margin-top:5px}.field.invalid .err-text{display:block}.field.invalid input,.field.invalid select{border-color:var(--danger);background:#fff8f8}.radio-row{display:flex;gap:10px}.radio-card{flex:1;height:50px;border:1.5px solid var(--line);border-radius:11px;display:flex;align-items:center;gap:7px;padding:0 13px;background:#fbfdfc;cursor:pointer}.radio-card:has(input:checked){border-color:var(--primary);background:var(--primary-soft);color:var(--primary-dark)}.radio-card input{width:auto;accent-color:var(--primary)}.job-step-label{font-size:12px;color:var(--muted);font-weight:700;margin-bottom:8px}.job-cat-tab,.job-mid-card,.job-sub-chip{border:1.5px solid var(--line);background:#fff;color:var(--text);cursor:pointer;transition:.15s}.job-cat-tab,.job-sub-chip{display:inline-flex;padding:7px 13px;border-radius:999px;margin:0 5px 6px 0}.job-mid-card{padding:10px;border-radius:9px;text-align:center}.job-cat-tab.on,.job-mid-card.on{background:var(--primary);border-color:var(--primary);color:#fff}.job-sub-chip.on{background:var(--primary-dark);border-color:var(--primary-dark);color:#fff}.job-selected-box{display:none;background:var(--primary-soft);border:1px solid #c8e4dd;border-radius:10px;padding:11px 13px;margin-top:9px;color:var(--primary-dark);font-size:13px;font-weight:700}.terms-box{display:grid;gap:10px}.terms-all,.term-row{border:1px solid var(--line);border-radius:11px;padding:12px 14px}.terms-all{background:var(--primary-soft);font-weight:800;color:var(--primary-dark)}.term-row{display:flex;align-items:center;justify-content:space-between;background:#fbfdfc}.term-label{display:flex;align-items:center;gap:8px;font-size:13px}.terms-box input{accent-color:var(--primary)}.view-btn{border:1px solid #a6cbc3;background:#fff;color:var(--primary);border-radius:7px;padding:6px 10px;font-size:11px;font-weight:750}.actions{display:flex;gap:10px}.actions .btn-primary{flex:2}.btn-ghost{flex:1;height:52px;border:1px solid var(--line);border-radius:11px;background:#fff;display:grid;place-items:center;color:var(--muted);font-weight:750}.modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,.48);z-index:500;align-items:center;justify-content:center;padding:18px}.modal-bg.open{display:flex}.modal{width:min(520px,100%);max-height:80vh;background:#fff;border-radius:18px;display:flex;flex-direction:column;overflow:hidden}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--line)}.modal-head h3{margin:0;font-size:17px}.modal-close{width:32px;height:32px;border:0;border-radius:50%;background:#eef3f1;font-size:20px}.modal-body{padding:20px;overflow:auto;font-size:13px;line-height:1.8}.pw-ok{color:var(--success);font-weight:800}.pw-bad{color:var(--danger);font-weight:800}
@media(max-width:850px){.login-shell{grid-template-columns:1fr;gap:30px}.login-intro{padding:15px 0 0}.login-intro h1{font-size:39px}.intro-points{display:none}.login-card{max-width:520px;width:100%;margin:auto}}
@media(max-width:600px){.auth-header-inner,.gnb{width:calc(100% - 28px)}.login-shell{width:calc(100% - 28px);padding:30px 0}.login-intro h1{font-size:32px}.login-intro>p{font-size:15px}.auth-card{padding:26px 20px}.grid{grid-template-columns:1fr}.full{grid-column:auto}.sec{padding:20px 16px}.actions{flex-direction:column}.hero h1{font-size:25px}.steps{display:none}}
/* v1.0.4.1 password reset */
.reset-shell{padding-top:54px;padding-bottom:64px}
.alert.ok{display:block;background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}
