/* 2026-10-03 병원별 간호사 취업정보 (/hospital) + 취업정보 하위 탭. blog.css 다음에 로드 */
/* ---- 취업정보 하위 탭 (일반 취업정보 | 병원·간호사) */
.cd-subtabs {display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:12px 0 14px; padding:6px; background:#fff; border:1px solid var(--blog-line,#e8ebf3); border-radius:18px; box-shadow:0 6px 20px -14px rgba(15,23,42,.18)}
.cd-subtab {display:flex; align-items:center; gap:12px; min-height:58px; padding:8px 14px; border-radius:13px; color:#475569 !important; text-decoration:none; transition:background-color .15s, color .15s, box-shadow .15s; min-width:0}
.cd-subtab:hover {background:#f1f5f9; color:#134e4a !important}
.cd-subtab:focus-visible {outline:2px solid #0d9488; outline-offset:2px}
.cd-subtab__ic {flex:none; display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; border-radius:11px; background:#f1f5f9; color:#0d9488}
.cd-subtab__ic svg {width:20px; height:20px}
.cd-subtab__txt {display:flex; flex-direction:column; min-width:0; line-height:1.25}
.cd-subtab__txt strong {font-size:15px; font-weight:800; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.cd-subtab__txt small {font-size:12px; font-weight:600; color:#94a3b8; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.cd-subtab.is-on {background:linear-gradient(135deg,#0d9488,#16a34a); color:#fff !important; box-shadow:0 8px 18px -10px rgba(13,148,136,.7)}
.cd-subtab.is-on .cd-subtab__ic {background:rgba(255,255,255,.2); color:#fff}
.cd-subtab.is-on small {color:rgba(255,255,255,.85)}
@media (max-width: 640px) {
  .cd-subtabs {gap:6px; padding:5px; border-radius:16px; margin:10px 0 12px}
  .cd-subtab {gap:8px; min-height:52px; padding:7px 10px; border-radius:12px}
  .cd-subtab__ic {width:30px; height:30px; border-radius:9px}
  .cd-subtab__ic svg {width:17px; height:17px}
  .cd-subtab__txt strong {font-size:14px}
  .cd-subtab__txt small {font-size:11px}
}
@media (max-width: 360px) {.cd-subtab__txt small {display:none} .cd-subtab {min-height:46px}}

/* ---- 공통 */
.hp-badge {display:inline-flex; align-items:center; height:24px; padding:0 9px; border-radius:999px; font-size:12px; font-weight:800; background:#f1f5f9; color:#475569 !important; white-space:nowrap}
.hp-badge--top {background:#e6fbf6; color:#0f766e !important}
.hp-ok {color:#0f766e; font-weight:700}
.hp-muted {color:#94a3b8; font-weight:600}
.hp-warn {color:#b45309; font-weight:700}
.hp-src {margin:14px 0 0; font-size:12.5px; color:#94a3b8; line-height:1.6}
.hp-src a {color:#64748b !important; text-decoration:underline !important}
.hp-box {background:#fff; border:1px solid var(--blog-line,#e8ebf3); border-radius:18px; padding:24px; margin:16px 0}
.hp-box__title {font-size:19px; font-weight:800; margin:0 0 14px; color:var(--blog-ink,#1e293b); letter-spacing:-.01em}
.hp-box__title small {font-size:13px; font-weight:600; color:#94a3b8; margin-left:6px}

/* ---- 목록 히어로 */
.hp-hero {position:relative; display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:24px; align-items:center; padding:34px 36px; margin:4px 0 16px; border-radius:26px; overflow:hidden;
  background:radial-gradient(circle at 85% 20%, rgba(34,197,94,.12), transparent 45%), linear-gradient(135deg,#ecfdf8,#f0fdf4 55%,#fff); border:1px solid #d5f5ef}
.hp-hero__title {font-size:36px; line-height:1.2; font-weight:900; letter-spacing:-.03em; margin:0 0 12px; color:#134e4a}
.hp-hero__title span {background:linear-gradient(135deg,#0d9488,#16a34a); -webkit-background-clip:text; background-clip:text; color:transparent}
.hp-hero__desc {font-size:15.5px; line-height:1.7; color:#475569; margin:0 0 18px; max-width:560px}
.hp-hero__desc b {color:#0f766e}
.hp-hero__art {display:flex; justify-content:center}
.hp-art {width:100%; max-width:300px; height:auto}
.hp-search {position:relative; display:flex; align-items:center; height:52px; max-width:520px; padding:0 16px 0 46px; border-radius:999px; background:#fff; border:1px solid rgba(15,23,42,.08); box-shadow:0 10px 30px -14px rgba(15,23,42,.2)}
.hp-search:focus-within {border-color:#0d9488; box-shadow:0 0 0 4px rgba(13,148,136,.15)}
.hp-search__ic {position:absolute; left:16px; top:50%; transform:translateY(-50%); width:20px; height:20px; color:#0d9488; display:flex}
.hp-search__ic svg {width:20px; height:20px}
.hp-search input {flex:1; min-width:0; height:100%; border:0; outline:0; background:transparent; font-size:15.5px; font-family:inherit; color:#134e4a; -webkit-appearance:none; appearance:none}
.hp-search input::placeholder {color:#94a3b8}
.hp-stats {display:flex; flex-wrap:wrap; gap:8px; list-style:none; padding:0; margin:16px 0 0}
.hp-stats li {display:flex; align-items:baseline; gap:5px; padding:7px 12px; border-radius:12px; background:rgba(255,255,255,.85); border:1px solid #d5f5ef; font-size:12.5px; color:#64748b; font-weight:600}
.hp-stats b {font-size:16px; color:#0f766e; font-weight:800}
.hp-admin-bar {margin-top:14px}

/* ---- 필터 */
.hp-filters {display:flex; flex-direction:column; gap:8px; margin:0 0 10px}
.hp-filter {display:flex; align-items:center; gap:10px; min-width:0}
.hp-filter__label {flex:none; width:34px; font-size:13px; font-weight:800; color:#64748b}
.hp-filter__chips {display:flex; gap:6px; overflow-x:auto; scrollbar-width:none; padding:2px 0; min-width:0}
.hp-filter__chips::-webkit-scrollbar {display:none}
.hp-filter .blog-chip small {margin-left:4px; font-size:11px; opacity:.7}
.hp-filter .blog-chip.is-on {background:#0d9488; border-color:#0d9488}
.hp-count {font-size:14px; color:#64748b; margin:14px 0 10px}
.hp-count b {color:#0f766e}

/* ---- 카드 */
.hp-grid {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; list-style:none; padding:0; margin:0}
.hp-card[hidden] {display:none}
.hp-card__link {position:relative; display:flex; flex-direction:column; height:100%; padding:18px 18px 14px; background:#fff; border:1px solid var(--blog-line,#e8ebf3); border-radius:16px; color:inherit !important; transition:border-color .15s, box-shadow .15s, transform .15s}
.hp-card__link:hover {border-color:#99e6d8; box-shadow:0 12px 28px -18px rgba(13,148,136,.55); transform:translateY(-2px)}
.hp-card__link:focus-visible {outline:2px solid #0d9488; outline-offset:2px}
.hp-card__top {display:flex; align-items:center; gap:8px; margin-bottom:10px; min-width:0}
.hp-card__region {font-size:12.5px; color:#64748b; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.hp-card__name {font-size:17.5px; font-weight:800; margin:0 0 6px; color:#0f172a; letter-spacing:-.02em; line-height:1.35}
.hp-card__addr {font-size:13px; color:#94a3b8; margin:0 0 12px; line-height:1.5; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden}
.hp-card__facts {display:flex; flex-wrap:wrap; gap:6px; list-style:none; padding:0; margin:0 0 12px}
.hp-card__facts li {font-size:12px; color:#64748b; background:#f8fafc; border-radius:8px; padding:4px 8px}
.hp-card__facts b {color:#134e4a}
.hp-card__foot {display:flex; justify-content:space-between; align-items:center; margin-top:auto; padding-top:10px; border-top:1px dashed #e2e8f0; font-size:12.5px}
.hp-card__go {color:#0d9488; font-weight:800}
.hp-hidden-tag {position:absolute; top:12px; right:12px; font-size:11px; font-weight:800; color:#b45309; background:#fef3c7; border-radius:6px; padding:2px 6px}
.hp-noresult {text-align:center; padding:40px 16px; color:#64748b; background:#fff; border:1px dashed #d6dcef; border-radius:16px; margin-top:8px}
.hp-guide {margin:28px 0 0; padding:22px 24px; border-radius:18px; background:#f8fafc; border:1px solid var(--blog-line,#e8ebf3)}
.hp-guide h2 {font-size:16px; font-weight:800; margin:0 0 10px; color:#134e4a}
.hp-guide ul {margin:0; padding-left:18px; color:#475569; font-size:14px; line-height:1.75}
.hp-guide b {color:#0f766e; margin-right:4px}

/* ---- 상세 */
.hp-view {max-width:880px; margin:0 auto}
.hp-crumb {flex-wrap:wrap; margin:6px 0 14px}
.hp-draft {background:#fef3c7; color:#92400e; border-radius:12px; padding:10px 14px; font-size:14px; font-weight:700; margin-bottom:12px}
.hp-head {padding:26px 28px; border-radius:22px; background:radial-gradient(circle at 90% 10%, rgba(34,197,94,.12), transparent 50%), linear-gradient(135deg,#ecfdf8,#fff); border:1px solid #d5f5ef}
.hp-head__meta {display:flex; align-items:center; gap:8px; margin-bottom:10px}
.hp-head__region {font-size:13px; font-weight:700; color:#64748b !important}
.hp-head__title {font-size:32px; font-weight:900; line-height:1.25; letter-spacing:-.03em; margin:0; color:#0f172a}
.hp-head__title span {display:block; font-size:.62em; font-weight:800; color:#0d9488; margin-top:4px; letter-spacing:-.01em}
.hp-head__official {margin:8px 0 0; font-size:13px; color:#94a3b8}
.hp-head__actions {display:flex; flex-wrap:wrap; gap:8px; margin-top:18px}
.hp-head__note {margin:12px 0 0; font-size:12.5px; color:#64748b}
.hp-cta {padding:0 18px; min-height:44px}
.hp-facts {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; margin:0; border-top:1px solid #eef2f7}
.hp-facts > div {display:flex; gap:12px; padding:12px 4px; border-bottom:1px solid #eef2f7; min-width:0}
.hp-facts__wide {grid-column:1 / -1}
.hp-facts dt {flex:none; width:76px; font-size:13px; font-weight:700; color:#94a3b8}
.hp-facts dd {margin:0; font-size:14.5px; color:#1e293b; font-weight:600; min-width:0; overflow-wrap:anywhere}
.hp-facts dd small {color:#94a3b8; font-weight:500}
.hp-facts dd a {color:#0f766e !important}
.hp-beds h3, .hp-depts h3 {font-size:14.5px; font-weight:800; margin:18px 0 10px; color:#334155}
.hp-beds h3 small, .hp-depts h3 small {color:#94a3b8; font-weight:600}
.hp-beds ul {display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; list-style:none; padding:0; margin:0}
.hp-beds li {display:flex; flex-direction:column; gap:2px; padding:10px 12px; border-radius:12px; background:#f8fafc}
.hp-beds li span {font-size:12px; color:#64748b; font-weight:600}
.hp-beds li b {font-size:18px; color:#134e4a}
.hp-depts ul {display:flex; flex-wrap:wrap; gap:6px; list-style:none; padding:0; margin:0}
.hp-depts li {font-size:13px; padding:5px 10px; border-radius:999px; background:#f1f5f9; color:#334155; font-weight:600}
.hp-depts li small {color:#94a3b8; font-weight:600; margin-left:2px}
.hp-spec {font-size:13.5px; color:#475569; margin:12px 0 0}
.hp-note {border-color:#99e6d8; background:#f0fdfa}
.hp-note__body {font-size:15px; line-height:1.75; color:#1e293b}
.hp-note__body p {margin:0 0 10px}
.hp-note__body a {color:#0f766e !important; text-decoration:underline !important; overflow-wrap:anywhere}
.hp-note__date {font-size:12.5px; color:#64748b; margin:6px 0 0}
.hp-tips__lead {font-size:14px; color:#64748b; margin:0 0 14px; line-height:1.65}
.hp-tips__list {list-style:none; counter-reset:tip; padding:0; margin:0; display:grid; gap:10px}
.hp-tips__list li {counter-increment:tip; position:relative; padding:14px 16px 14px 54px; border-radius:14px; background:#f8fafc; display:flex; flex-direction:column; gap:4px}
.hp-tips__list li::before {content:counter(tip); position:absolute; left:16px; top:14px; width:26px; height:26px; border-radius:8px; background:linear-gradient(135deg,#0d9488,#22c55e); color:#fff; font-size:13px; font-weight:800; display:flex; align-items:center; justify-content:center}
.hp-tips__list b {font-size:15px; color:#134e4a}
.hp-tips__list span {font-size:14px; line-height:1.7; color:#475569}
.hp-ad {margin:18px 0; min-height:100px}
.hp-products__lead {font-size:14px; color:#64748b; margin:-4px 0 14px}
.hp-prods {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; list-style:none; padding:0; margin:0}
.hp-prod__link {display:flex; flex-direction:column; height:100%; padding:14px 16px; border-radius:14px; border:1px solid var(--blog-line,#e8ebf3); background:#fff; color:inherit !important; transition:border-color .15s, box-shadow .15s}
.hp-prod__link:hover {border-color:#99e6d8; box-shadow:0 10px 24px -18px rgba(13,148,136,.6)}
.hp-prod__top {display:flex; align-items:center; gap:6px; margin-bottom:8px; min-width:0}
.hp-prod__type {font-size:11px; font-weight:800; padding:2px 7px; border-radius:6px; background:#e0e7ff; color:#4338ca}
.hp-prod__type--hwp {background:#dbeafe; color:#1d4ed8}
.hp-prod__type--ppt {background:#ffedd5; color:#c2410c}
.hp-prod__type--pdf {background:#fee2e2; color:#b91c1c}
.hp-prod__type--word {background:#e0f2fe; color:#0369a1}
.hp-prod__flag {font-size:11px; font-weight:800; padding:2px 7px; border-radius:6px; background:#e6fbf6; color:#0f766e; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.hp-prod__title {font-size:14.5px; font-weight:700; line-height:1.5; margin:0 0 10px; color:#1e293b; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden}
.hp-prod__meta {display:flex; justify-content:space-between; align-items:center; margin-top:auto; font-size:12.5px; color:#94a3b8}
.hp-prod__meta b {color:#0f766e; font-size:14px}
.hp-products__more {display:flex; flex-wrap:wrap; gap:8px; margin-top:14px}
.hp-near__list {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; list-style:none; padding:0; margin:0}
.hp-near__list a {display:flex; align-items:center; gap:8px; padding:10px 12px; border-radius:12px; background:#f8fafc; color:#1e293b !important; min-width:0}
.hp-near__list a:hover {background:#ecfdf8}
.hp-near__list b {font-size:14px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.hp-near__all {display:inline-block; margin-top:12px; font-size:13.5px; font-weight:800; color:#0d9488 !important}

/* ---- 관리자 */
.hp-admin__head {display:flex; justify-content:space-between; align-items:center; gap:12px; flex-wrap:wrap; margin:8px 0 6px}
.hp-admin__head h1 {font-size:24px; font-weight:900; margin:0}
.hp-admin__head h1 small {font-size:14px; color:#94a3b8; font-weight:600}
.hp-admin__links {display:flex; gap:8px}
.hp-admin__help {font-size:13.5px; color:#64748b; line-height:1.6; margin:0 0 12px}
.hp-admin__tools {margin:8px 0}
.hp-input {width:100%; height:42px; padding:0 12px; border:1px solid #dbe2ea; border-radius:10px; font-size:14px; font-family:inherit; background:#fff; color:#1e293b}
textarea.hp-input {height:auto; padding:10px 12px; line-height:1.6; resize:vertical}
.hp-input:focus {outline:none; border-color:#0d9488; box-shadow:0 0 0 3px rgba(13,148,136,.15)}
.hp-table-wrap {overflow-x:auto; background:#fff; border:1px solid var(--blog-line,#e8ebf3); border-radius:14px}
.hp-table {width:100%; border-collapse:collapse; font-size:13.5px; min-width:760px}
.hp-table th {text-align:left; background:#f8fafc; color:#64748b; font-weight:700; padding:10px 12px; border-bottom:1px solid #eef2f7; white-space:nowrap}
.hp-table td {padding:10px 12px; border-bottom:1px solid #f1f5f9; vertical-align:middle}
.hp-table td small {color:#94a3b8}
.hp-table td a {color:#0f172a !important}
.hp-table tr[hidden] {display:none}
.hp-src-list {list-style:none; padding:0; margin:10px 0 0; max-height:420px; overflow:auto; border:1px solid #eef2f7; border-radius:12px}
.hp-src-list li {display:flex; justify-content:space-between; align-items:center; gap:10px; padding:8px 12px; border-bottom:1px solid #f1f5f9; font-size:13.5px}
.hp-src-list li[hidden] {display:none}
.hp-src-list small {color:#94a3b8}
.hp-form {background:#fff; border:1px solid var(--blog-line,#e8ebf3); border-radius:18px; padding:22px; margin:12px 0}
.hp-form__grid {display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px 16px}
.hp-form label {display:flex; flex-direction:column; gap:6px; font-size:13.5px; font-weight:700; color:#334155}
.hp-form label small {font-weight:500; color:#94a3b8; line-height:1.5}
.hp-form__full {margin-top:14px}
.hp-form .hp-check {flex-direction:row; align-items:center; gap:8px; margin-top:14px}
.hp-form__actions {display:flex; align-items:center; gap:12px; margin-top:16px; flex-wrap:wrap}
.hp-msg {font-size:13.5px; color:#64748b}
.hp-msg.is-ok {color:#0f766e; font-weight:700}
.hp-msg.is-err {color:#b91c1c; font-weight:700}
.hp-msg a {margin-left:6px; color:#0f766e !important; text-decoration:underline !important}
.hp-admin-prods {margin:0; padding-left:20px; font-size:13.5px; line-height:1.9}
.hp-admin-prods small {color:#94a3b8}

/* ---- 반응형 */
@media (max-width: 1024px) {
  .hp-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .hp-hero {padding:28px}
  .hp-hero__title {font-size:30px}
}
@media (max-width: 640px) {
  .hp-hero {grid-template-columns:minmax(0,1fr); padding:20px 18px 22px; border-radius:22px; gap:0}
  .hp-hero__art {display:none}
  .hp-hero__title {font-size:25px}
  .hp-hero__desc {font-size:14.5px}
  .hp-search {height:48px}
  .hp-stats li {padding:6px 10px}
  .hp-grid {grid-template-columns:minmax(0,1fr); gap:10px}
  .hp-filter__label {width:30px; font-size:12.5px}
  .hp-box {padding:18px 16px; border-radius:16px}
  .hp-box__title {font-size:17px}
  .hp-head {padding:20px 18px; border-radius:18px}
  .hp-head__title {font-size:25px}
  .hp-head__actions .blog-btn {flex:1 1 100%}
  .hp-facts {grid-template-columns:minmax(0,1fr)}
  .hp-facts dt {width:68px}
  .hp-beds ul {grid-template-columns:repeat(2,minmax(0,1fr))}
  .hp-prods, .hp-near__list {grid-template-columns:minmax(0,1fr)}
  .hp-tips__list li {padding:12px 14px 12px 48px}
  .hp-tips__list li::before {left:13px; top:12px}
  .hp-form__grid {grid-template-columns:minmax(0,1fr)}
  .hp-products__more .blog-btn {flex:1 1 100%}
}
/* 사이트 공통 h1/h2 밑줄 제거 (병원 페이지 제목들) */
.hp-box__title, .hp-card__name, .hp-guide h2, .hp-head__title, .hp-hero__title, .hp-admin__head h1, .hp-prod__title, .hp-beds h3, .hp-depts h3 {border-bottom:0 !important; padding-bottom:0 !important}
.hp-box__title {margin-bottom:14px !important}

/* 2026-10-03 (2차) 자기소개서 자료 없음 상태 */
.hp-prods-empty {display:flex; flex-direction:column; align-items:center; text-align:center; gap:8px; padding:32px 18px; border:1px dashed #b7ebe0; border-radius:16px; background:#f6fefc}
.hp-prods-empty__ic {display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; border-radius:14px; background:#e6fbf6; color:#0d9488}
.hp-prods-empty__ic svg {width:26px; height:26px}
.hp-prods-empty__title {margin:4px 0 0; font-size:16px; font-weight:800; color:#134e4a}
.hp-prods-empty__desc {margin:0 0 6px; font-size:13.5px; color:#64748b; line-height:1.6; max-width:420px}
.hp-prods-empty__title, .hp-prods-empty__desc {word-break:keep-all; overflow-wrap:break-word}

/* ===== 2026-10-03 취업정보 3번째 탭(사회복지사) + /welfare 허브 ===== */
.cd-subtabs {grid-template-columns:repeat(3, minmax(0, 1fr))}
@media (max-width: 860px) {
  .cd-subtab {gap:9px; padding:8px 10px}
  .cd-subtab__txt small {display:none}
}
@media (max-width: 640px) {
  .cd-subtab {flex-direction:column; justify-content:center; gap:4px; min-height:64px; padding:8px 4px; text-align:center}
  .cd-subtab__txt {align-items:center; max-width:100%}
  .cd-subtab__txt strong {font-size:13px; letter-spacing:-.2px}
}
@media (max-width: 360px) {.cd-subtab {min-height:58px} .cd-subtab__ic {width:26px; height:26px} .cd-subtab__txt strong {font-size:12px}}
.wf-badge {background:#fff1e6; color:#c2410c !important}
.hp-filter button.blog-chip {font:inherit; cursor:pointer; -webkit-appearance:none; appearance:none}
.hp-filter .blog-chip.wf-chip-off {opacity:.55; cursor:default; background:#f8fafc; border-style:dashed; pointer-events:none}
.wf-card .hp-card__facts li.wf-op {max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.wf-boards__list {list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:10px}
.wf-boards__list a {display:flex; flex-direction:column; gap:2px; position:relative; padding:12px 34px 12px 14px; border:1px solid var(--blog-line,#e8ebf3); border-radius:14px; background:#fff; color:#0f172a !important; text-decoration:none; transition:border-color .15s, box-shadow .15s}
.wf-boards__list a:hover {border-color:#99e6d8; box-shadow:0 6px 16px -12px rgba(13,148,136,.6)}
.wf-boards__list b {font-size:14px; font-weight:800; word-break:keep-all}
.wf-boards__list small {font-size:12px; color:#64748b}
.wf-boards__list span {position:absolute; right:14px; top:50%; transform:translateY(-50%); color:#0d9488; font-weight:800}
@media (max-width: 640px) {.wf-boards__list {grid-template-columns:1fr}}
