:root{--job-blue:#2d62d6;--job-ink:#172033;--job-muted:#687386;--job-line:#e5eaf1;--job-bg:#f6f8fc}
.job-main{min-height:70vh;background:var(--job-bg);padding:36px 0 64px}.job-wrap{width:min(1020px,calc(100% - 32px));margin:auto}.job-hero{padding:48px;border-radius:24px;background:linear-gradient(135deg,#eaf2ff,#f3fbff 55%,#effff6);margin-bottom:28px}.job-hero h1{font-size:clamp(28px,4vw,46px);margin:0 0 12px}.job-hero p{color:var(--job-muted);margin:0;max-width:720px}.job-nav{display:flex;gap:24px;font-size:13px;font-weight:700}.job-card,.job-form,.job-table-wrap,.job-notice{background:#fff;border:1px solid var(--job-line);border-radius:16px;padding:24px;box-shadow:0 8px 24px rgba(35,49,69,.05);margin-bottom:18px}.job-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.job-list{display:grid;gap:14px}.job-card h2,.job-card h3{margin-top:0}.job-meta{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.job-meta span,.status{background:#edf4ff;color:#2458c3;padding:4px 9px;border-radius:999px;font-size:12px}.status.draft{background:#f2f4f7;color:#596273}.status.private,.status.closed,.status.suspended{background:#fff1f2;color:#b42318}.job-price{font-size:22px;font-weight:800;color:#2458c3}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:11px 22px;background:linear-gradient(135deg,#477ae4,#2458c3);color:#fff;font-weight:700;cursor:pointer}.btn.secondary{background:#fff;color:#2458c3;border:1px solid #bcd0f4}.btn.danger{background:#b42318}.actions{display:flex;flex-wrap:wrap;gap:8px}.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.field-grid .wide{grid-column:1/-1}label{display:block;font-weight:700;font-size:13px}input,select,textarea{width:100%;margin-top:6px;padding:11px 12px;border:1px solid #ccd5e2;border-radius:9px;background:#fff;font:inherit}textarea{min-height:120px;resize:vertical}.checks{display:flex;flex-wrap:wrap;gap:16px}.checks label{font-weight:500}.checks input{width:auto;margin-right:5px}.error{background:#fff1f2;color:#b42318;padding:12px;border-radius:10px;margin-bottom:16px}.success{background:#ecfdf3;color:#027a48;padding:12px;border-radius:10px;margin-bottom:16px}.job-notice{font-size:12px;color:#596273;background:#fffdf7}.job-table{width:100%;border-collapse:collapse}.job-table th,.job-table td{text-align:left;border-bottom:1px solid var(--job-line);padding:10px;font-size:13px}.dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}.metric{background:#fff;padding:18px;border-radius:14px;border:1px solid var(--job-line)}.metric b{display:block;font-size:28px}.pagination{display:flex;gap:8px;margin-top:20px}.muted{color:var(--job-muted)}
@media(max-width:760px){.site-header{padding:0 14px}.job-nav{gap:10px}.job-nav a:first-child{display:none}.job-main{padding-top:20px}.job-hero{padding:28px 20px}.job-grid,.field-grid,.metric-grid{grid-template-columns:1fr}.field-grid .wide{grid-column:auto}.dashboard-head{display:block}.dashboard-head .actions{margin-top:12px}.job-table-wrap{overflow:auto;padding:12px}.job-table{min-width:680px}}
/* Job seeker preference registration */
.eyebrow{font-size:13px;font-weight:800;letter-spacing:.08em;color:#2458c3;margin-bottom:10px!important}.hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.seeker-hero{background:linear-gradient(135deg,#eaf2ff 0%,#f4f8ff 45%,#effff5 100%)}.seeker-form{padding:0;overflow:hidden}.form-section{padding:28px;border-bottom:1px solid var(--job-line)}.form-section:last-child{border-bottom:0}.section-heading{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px}.section-heading>span{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;border-radius:50%;background:#edf4ff;color:#2458c3;font-weight:800;font-size:12px}.section-heading h2{margin:0 0 4px;font-size:21px}.section-heading p{margin:0;color:var(--job-muted);font-size:13px}.required{display:inline-block;margin-left:5px;padding:2px 6px;border-radius:999px;background:#fff1f2;color:#b42318;font-size:10px}.optional{font-size:11px;color:#7b8493;font-weight:500}.inline-pair{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}.preference-checks{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.preference-checks label{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--job-line);border-radius:12px;padding:14px;cursor:pointer;background:#fff}.preference-checks input{width:auto;margin:3px 0 0}.preference-checks span{display:block}.preference-checks b{display:block;font-size:14px}.preference-checks small{display:block;color:var(--job-muted);font-weight:400;margin-top:3px;line-height:1.45}.other-pref{display:block;margin-top:18px}.compact-consent{background:#fbfcfe}.consent-row{display:flex;align-items:flex-start;gap:9px;font-weight:500;margin:8px 0}.consent-row input{width:auto;margin:3px 0 0}.seeker-submit{text-align:center;padding:28px}.seeker-primary{background:linear-gradient(135deg,#2458c3,#3f7bea);box-shadow:0 8px 22px rgba(36,88,195,.18)}.seeker-submit p{font-size:12px;color:var(--job-muted);margin:10px 0 0}.seeker-complete{text-align:center;padding:48px 28px}.complete-icon{display:flex;width:64px;height:64px;border-radius:50%;align-items:center;justify-content:center;margin:0 auto 18px;background:#ecfdf3;color:#027a48;font-weight:900;font-size:30px}.center-actions{justify-content:center;margin-top:24px}
@media(max-width:760px){.preference-checks{grid-template-columns:1fr}.form-section{padding:22px 18px}.hero-actions{display:grid}.hero-actions .btn{width:100%}}

/* Seeker My Page */
.mypage-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.mypage-nav a{background:#fff;border:1px solid var(--job-line);padding:9px 13px;border-radius:999px;font-size:12px;font-weight:700}.mypage-welcome{display:flex;justify-content:space-between;align-items:center;gap:18px;background:linear-gradient(135deg,#172b55,#2458c3);color:#fff;padding:30px;border-radius:20px;margin-bottom:20px}.mypage-welcome h1{margin:0 0 8px}.mypage-welcome p{margin:0}.mypage-welcome .eyebrow{color:#cfe0ff}.notify-chip{background:rgba(255,255,255,.14);padding:10px 14px;border-radius:999px;white-space:nowrap}.mypage-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.match-card{display:grid;grid-template-columns:82px 1fr;gap:16px;align-items:start}.match-score{width:72px;height:72px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#edf4ff;color:#2458c3}.match-score b{font-size:21px}.match-score span{font-size:10px}.match-tags{display:flex;flex-wrap:wrap;gap:6px}.match-tags span{font-size:11px;background:#ecfdf3;color:#027a48;padding:4px 8px;border-radius:999px}.side-box,.mypage-ad{display:block;background:#fff;border:1px solid var(--job-line);border-radius:16px;padding:18px;margin-bottom:14px}.side-box h3{margin-top:0}.mini-news{padding:10px 0;border-bottom:1px solid var(--job-line)}.mini-news:last-child{border:0}.mini-news time,.mini-news b,.mini-news a{display:block}.mini-news time{font-size:10px;color:var(--job-muted)}.mini-news b{font-size:13px;margin:3px 0}.mini-news a{font-size:11px}.mypage-ad img{width:100%;border-radius:10px;margin-bottom:10px}.mypage-ad b,.mypage-ad span{display:block}.mypage-ad span{font-size:12px;color:var(--job-muted);margin-top:4px}.auth-card{max-width:620px;margin:auto}.content-admin-row{display:grid;grid-template-columns:1fr 100px auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--job-line)}input[type=range]{padding:0}.job-form small{display:block;margin-top:5px}
@media(max-width:820px){.mypage-layout{grid-template-columns:1fr}.mypage-welcome{display:block}.notify-chip{display:inline-block;margin-top:14px}.match-card{grid-template-columns:64px 1fr}.match-score{width:58px;height:58px}.content-admin-row{grid-template-columns:1fr auto}.content-admin-row form{grid-column:1/-1}}

.mypage-email{font-size:13px;opacity:.9;margin:6px 0 10px!important;word-break:break-all}

.job-detail-modern{max-width:1120px;margin:0 auto}.job-detail-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;background:#fff;border:1px solid var(--job-line);border-radius:20px;padding:28px;margin-bottom:20px}.job-detail-head h1{margin:8px 0 14px;font-size:clamp(26px,3vw,38px);line-height:1.35}.job-source-line{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--job-muted)}.source-badge{background:#eef4ff;color:#2458c3;padding:4px 8px;border-radius:999px;font-weight:700}.salary-panel{min-width:220px;background:#f8fafc;border-radius:16px;padding:18px}.salary-panel small,.salary-panel strong{display:block}.salary-panel strong{font-size:20px;margin-top:5px}.job-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px}.detail-section{background:#fff;border:1px solid var(--job-line);border-radius:18px;padding:24px;margin-bottom:16px}.detail-section h2{font-size:19px;margin:0 0 18px;padding-bottom:10px;border-bottom:1px solid var(--job-line)}.detail-prose{line-height:1.95;font-size:15px}.detail-list{margin:0}.detail-list>div{display:grid;grid-template-columns:140px 1fr;gap:18px;padding:13px 0;border-bottom:1px solid var(--job-line)}.detail-list>div:last-child{border-bottom:0}.detail-list dt{font-weight:700;color:var(--job-muted)}.detail-list dd{margin:0}.benefit-tags{margin-bottom:14px}.job-detail-side .sticky-box{position:sticky;top:90px;background:#fff;border:1px solid var(--job-line);border-radius:18px;padding:20px}.job-detail-side .btn{width:100%;text-align:center;margin-top:12px}@media(max-width:820px){.job-detail-head{display:block;padding:20px}.salary-panel{margin-top:16px;min-width:0}.job-detail-layout{grid-template-columns:1fr}.detail-list>div{grid-template-columns:1fr;gap:5px}.job-detail-side .sticky-box{position:static}}

.image-upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.image-upload-box{border:1px solid var(--job-line);border-radius:14px;padding:12px;background:#fff}.image-upload-box img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;margin-bottom:8px}.job-image-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 20px}.job-image-gallery img{width:100%;height:240px;object-fit:cover;border-radius:16px}.job-image-gallery.count-1{grid-template-columns:1fr}.job-image-gallery.count-1 img{height:min(480px,50vw)}.job-image-gallery.count-2{grid-template-columns:repeat(2,1fr)}.contract-expiring td,.contract-alert-cell{background:#fff0f0!important}.contract-expired td{background:#ffe4e4!important}.contract-expiring b,.contract-expired b{color:#b42318}.renewal-btn{background:#b42318!important;color:#fff!important;border-color:#b42318!important}@media(max-width:760px){.image-upload-grid,.job-image-gallery,.job-image-gallery.count-2{grid-template-columns:1fr}.job-image-gallery img{height:auto}}


/* ===== Portal common header + Job secondary navigation ===== */
.job-main{padding-top:34px}
.job-service-bar{position:sticky;top:72px;z-index:42;background:rgba(255,255,255,.97);border-bottom:1px solid #e8edf4;box-shadow:0 5px 16px rgba(28,45,70,.04);backdrop-filter:blur(12px)}
.job-service-inner{width:min(1180px,calc(100% - 40px));height:54px;margin:0 auto;display:flex;align-items:center;gap:28px;min-width:0}
.job-service-brand{display:flex;align-items:center;gap:8px;flex:0 0 auto;text-decoration:none;color:#172033}.job-service-brand span{font-size:9px;letter-spacing:.14em;color:#6e7890;font-weight:800}.job-service-brand b{font-size:15px;color:#2458c3}
.job-service-links{display:flex;align-items:center;gap:4px;min-width:0;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.job-service-links::-webkit-scrollbar{display:none}.job-service-links a{display:inline-flex;align-items:center;white-space:nowrap;padding:8px 11px;border-radius:999px;font-size:12px;font-weight:700;color:#42516a;text-decoration:none;transition:.18s}.job-service-links a:hover{background:#edf4ff;color:#2458c3}.job-service-links .job-service-admin{background:#172b55;color:#fff}
.job-footer-links{background:linear-gradient(135deg,#f4f7ff,#f7fbff);border-top:1px solid #e6ebf3;border-bottom:1px solid #e6ebf3}.job-footer-links-inner{width:min(1020px,calc(100% - 40px));margin:0 auto;padding:20px 0;display:flex;align-items:center;justify-content:space-between;gap:24px}.job-footer-links-inner>div span,.job-footer-links-inner>div b{display:block}.job-footer-links-inner>div span{font-size:9px;letter-spacing:.12em;color:#687386;font-weight:800;margin-bottom:3px}.job-footer-links-inner>div b{font-size:14px;color:#172033}.job-footer-links nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px 14px}.job-footer-links nav a{font-size:11px;font-weight:700;color:#42516a;text-decoration:none}.job-footer-links nav a:hover{color:#2458c3}
/* Legacy Job header nav is no longer used. */
.job-nav{display:none!important}
@media(max-width:768px){
 .job-service-bar{top:64px}
 .job-service-inner{width:100%;height:52px;padding:0 14px;gap:14px}
 .job-service-brand span{display:none}.job-service-brand b{font-size:13px}
 .job-service-links{gap:1px}.job-service-links a{padding:8px 9px;font-size:11px}
 .job-main{padding-top:20px}
 .job-footer-links-inner{display:block;padding:18px 0}.job-footer-links nav{justify-content:flex-start;margin-top:12px;gap:9px 15px}
}
@media(max-width:480px){
 .job-service-inner{padding:0 10px}.job-service-brand{display:none}.job-service-links{width:100%}
}
