@charset "UTF-8";

/* 기업정보. 색·여백은 open-job-detail-renewal.css와 동일 규격. */
/* 업체 구분·공개 상태는 쿼리가 상수 '-'를 줘서 영원히 빈 칸이라 걷어냈다. */

/* styles.css의 body{font-family:Inter!important}를 이기려면 여기서도 !important가 필요하다. */
.corp-page,
.corp-renewal { font-family:Pretendard,"Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR",sans-serif!important; }

.corp-main { padding:0 0 80px; background:#f7f9fc; }
.corp-main .main-content-width { width:min(1180px, calc(100% - 40px)); margin:0 auto; }

.corp-breadcrumb { display:flex; align-items:center; gap:6px; padding:18px 0 14px; color:#8a93a4; font-size:13px; }
.corp-breadcrumb a { color:#8a93a4; }
.corp-breadcrumb a:hover { color:#2163d8; text-decoration:underline; text-underline-offset:3px; }
.corp-breadcrumb span[aria-current] { color:#4d596d; font-weight:600; word-break:keep-all; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

/* 기업 헤더 */
.corp-hero { display:flex; align-items:center; gap:20px; padding:26px 28px; border:1px solid #e3e7ee; border-radius:14px 14px 0 0; background:#fff; }
.corp-logo { flex:none; display:inline-flex; align-items:center; justify-content:center; width:88px; height:88px; overflow:hidden; border:1px solid #e6eaf1; border-radius:16px; background:#f8fafc; color:#5b6679; font-size:32px; font-weight:700; }
.corp-logo img { width:100%; height:100%; object-fit:contain; }
.corp-hero-body { flex:1; min-width:0; }
.corp-title { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin:0; font-size:inherit; font-weight:inherit; line-height:inherit; }
.corp-title strong { color:#171e2c; font-size:24px; line-height:1.32; font-weight:700; letter-spacing:-.5px; word-break:keep-all; }
.corp-badge { display:inline-flex; align-items:center; gap:5px; height:24px; padding:0 9px; border-radius:5px; background:#eaf7f0; color:#1c7a4c; font-size:11px; font-weight:700; }
.corp-badge[hidden] { display:none; }
.corp-badge i { font-size:14px; }
.corp-sub { margin:9px 0 0; color:#7b8493; font-size:14px; line-height:1.6; word-break:keep-all; }
.corp-sub[hidden] { display:none; }

.corp-hero-actions { flex:none; display:flex; flex-direction:column; gap:8px; }
.corp-action { display:inline-flex; align-items:center; justify-content:center; gap:5px; min-width:132px; height:42px; padding:0 18px; border:1px solid #e0e5ec; border-radius:8px; background:#fff; color:#5b6679!important; font-size:14px; font-weight:700; }
.corp-action:hover { border-color:#c6cddb; color:#1c2535!important; }
.corp-action[hidden] { display:none; }
.corp-action.is-primary { border-color:#2163d8; background:#2163d8; color:#fff!important; }
.corp-action.is-primary:hover { background:#1a4ba8; border-color:#1a4ba8; }
.corp-action i { font-size:16px; }

/* 지표. 헤더에 이어 붙여 한 장의 기업 카드로 보이게 한다. */
.corp-stats { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); margin:0 0 20px; padding:0; list-style:none; border:1px solid #e3e7ee; border-top:0; border-radius:0 0 14px 14px; background:#fbfcfe; overflow:hidden; }
.corp-stats > li { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; padding:18px 12px; border-left:1px solid #eef0f4; text-align:center; }
.corp-stats > li:first-child { border-left:0; }
.corp-stats strong { color:#2163d8; font-size:22px; font-weight:700; letter-spacing:-.5px; }
.corp-stats > li:last-child strong { color:#171e2c; }
.corp-stats span { color:#8a93a4; font-size:12px; font-weight:600; }

.corp-alert { margin-bottom:20px; padding:16px 18px; border:1px solid #f0d9a8; border-radius:10px; background:#fffaf0; color:#8a5b00; font-size:13px; line-height:1.6; }
.corp-alert[hidden] { display:none; }

/* 본문 블록 */
.corp-block { margin-bottom:20px; padding:26px 28px; border:1px solid #e3e7ee; border-radius:14px; background:#fff; }
.corp-block[hidden] { display:none; }
.corp-block-head { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:10px; margin-bottom:18px; }
.corp-block-head h2 { margin:0; padding-left:11px; border-left:3px solid #2163d8; color:#1c2535; font-size:17px; line-height:1.35; font-weight:700; }
.corp-block-head a { display:inline-flex; align-items:center; gap:2px; color:#2163d8; font-size:13px; font-weight:700; }
.corp-block-head a:hover { text-decoration:underline; text-underline-offset:3px; }
.corp-block-head a[hidden] { display:none; }
.corp-block-head a i { font-size:15px; }

.corp-intro-title { margin:0 0 8px; color:#1c2535; font-size:15px; font-weight:700; word-break:keep-all; }
.corp-intro-title[hidden] { display:none; }
.corp-intro-body { margin:0; color:#3f4a5c; font-size:14px; line-height:1.8; word-break:break-word; }

/* 공고 목록. 카드로 쪼개지 않고 행으로 이어 붙인다. */
.corp-jobs { margin:0; padding:0; list-style:none; }
.corp-job + .corp-job { border-top:1px solid #f0f2f6; }
.corp-job > a { display:flex; align-items:center; gap:18px; padding:17px 0; }
.corp-job > a:hover .corp-job-body strong { color:#2163d8; text-decoration:underline; text-underline-offset:3px; }
.corp-job-body { flex:1; min-width:0; }
.corp-job-body strong { display:block; color:#1f2838; font-size:15px; line-height:1.45; font-weight:700; word-break:keep-all; }
.corp-job-body p { margin:5px 0 0; color:#7b8493; font-size:13px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.corp-job-tags { display:flex; flex-wrap:wrap; gap:6px; margin-top:9px; }
.corp-job-tags span { display:inline-flex; align-items:center; height:24px; padding:0 9px; border:1px solid #eceff4; border-radius:12px; background:#fafbfd; color:#5b6679; font-size:12px; font-weight:600; }
.corp-job-side { flex:none; display:flex; flex-direction:column; align-items:flex-end; gap:5px; }
.corp-job-dday { color:#4d596d; font-size:14px; font-weight:700; white-space:nowrap; }
.corp-job-dday.is-urgent { color:#e15148; }
.corp-job-hits { color:#a7aebb; font-size:12px; white-space:nowrap; }
.corp-job.is-end .corp-job-body strong { color:#8a93a4; }
.corp-job.is-end .corp-job-dday { color:#a7aebb; }

.corp-jobs-empty { padding:44px 20px; color:#8a93a4; font-size:14px; text-align:center; }
/* 로딩 자리 */
.corp-jobs-loading { position:relative; overflow:hidden; display:grid; gap:12px; padding:12px 0; }
.corp-jobs-loading::after { content:""; position:absolute; inset:0; transform:translateX(-100%); background:linear-gradient(90deg,transparent,rgba(255,255,255,.75),transparent); animation:mainShimmer 1.25s ease-in-out infinite; }

.corp-pager { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:6px; margin-top:20px; padding-top:18px; border-top:1px solid #f0f2f6; }
.corp-pager[hidden] { display:none; }
.corp-pager button { min-width:34px; height:34px; padding:0 9px; border:1px solid #e0e5ec; border-radius:7px; background:#fff; color:#5b6679; font-size:13px; font-weight:700; cursor:pointer; }
.corp-pager button:hover { border-color:#c6cddb; color:#1c2535; }
.corp-pager button.is-active { border-color:#2163d8; background:#2163d8; color:#fff; }

@media (max-width:900px) {
    .corp-hero { flex-wrap:wrap; gap:16px; padding:22px 20px; }
    .corp-logo { width:68px; height:68px; font-size:26px; border-radius:14px; }
    .corp-title strong { font-size:20px; }
    .corp-hero-actions { width:100%; flex-direction:row; }
    .corp-action { flex:1; min-width:0; }
}

@media (max-width:768px) {
    .corp-main .main-content-width { width:calc(100% - 32px); }
    .corp-block { padding:22px 18px; }
    .corp-stats strong { font-size:19px; }
    .corp-job > a { flex-direction:column; align-items:flex-start; gap:10px; }
    .corp-job-side { flex-direction:row; align-items:center; gap:10px; }
}
