@charset "utf-8";

/*!*******************
 *! LIST
 *!*******************/

/*! 의료진 list - 카테고리 */
.nav-pills-staff{display:flex;justify-content:left;margin:0 -.25rem;text-align:center}
.nav-pills-staff>.nav-item{flex:1 1 50%}
/* 하단 라인만 — 호버·활성 시 글자·라인 staff, 활성은 font-weight 600, 배경 유지 */
.nav-pills-staff>.nav-item>.nav-link{margin:.25rem .25rem;padding:.75rem 0;font-size:.9375rem;color:#212529;border:0;border-bottom:1px solid #dee2e6;border-radius:0;background:#fff;transition:color .2s ease,border-color .2s ease}
.nav-pills-staff>.nav-item>.nav-link:focus,.nav-pills-staff>.nav-item>.nav-link:hover{color:#005bac!important;border-bottom-color:#005bac;background:#fff;cursor:pointer}
.nav-pills-staff>.nav-item>.active{color:#005bac!important;font-weight:600;border-bottom-color:#005bac;background:#fff}
.nav-pills-staff>.nav-item>.nav-link.is-hidden{background:#adb5bd}
.nav-pills-staff>.nav-item>.nav-link.is-hidden:focus,.nav-pills-staff>.nav-item>.nav-link.is-hidden:hover,.nav-pills-staff>.nav-item>.nav-link.is-hidden.active{background:#6c757d}
@media(min-width:782px){
.nav-pills-staff>.nav-item{flex:1 1 33.3%}
}
@media(min-width:1200px){
.nav-pills-staff>.nav-item{flex:1 1 auto}
.nav-pills-staff>.nav-item>.nav-link{font-size:1rem}
}

 /*! 의료진 list - 진료시간 */
.staff-list-hours{margin:0 0 5rem 0;padding:5rem 0;background:#f5f9fd}
.staff-list-hours-inner{padding:1rem 1rem;border:3px solid #dce8f4;border-radius:.375rem;background:#fff}
.staff-list-hours-inner h3{display:inline-block;margin:0;padding:.5rem 1rem;min-width:100%;color:#fff;text-align:center;border-radius:.375rem .375rem 0 0;background:#005bac}
.staff-list-hours-list{display:grid;grid-template-columns:1fr 1fr;margin:0;padding:0;list-style:none;border-top:1px solid #6baae0;border-bottom:1px solid #6baae0;overflow:hidden}
.staff-list-hours-list>li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem .75rem;margin:0;padding:.875rem 1.25rem;color:#0a285f;font-size:1rem;font-weight:600;border-bottom:1px solid #6baae0;background:#fff}
.staff-list-hours-list>li:nth-child(n+3){border-bottom:0;background:rgba(0,0,0,.015)}
.staff-list-hours-label{flex:0 0 auto;min-width:3.25rem;font-weight:400}
.staff-list-hours-list strong{margin:0;padding:0;color:#005bac;font-weight:600}
@media(min-width:782px){
.staff-list-hours-inner{padding:2.5rem 2.5rem}
.staff-list-hours-inner h3{min-width:13.5rem}
}

/*! 의료진 list - 상단 nav (사진·진료과·이름) */
.staff-list-nav{position:sticky;top:0;z-index:1;padding:0 0 1rem 0;background:#fff;transition:padding .2s ease}
.staff-list-nav.is-stuck{padding-top:1rem}
.staff-list-nav ul{display:flex;flex-wrap:nowrap;gap:.5rem;margin:0;padding:0 .15rem .5rem;max-width:100%;min-width:0;list-style:none;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.staff-list-nav ul::-webkit-scrollbar{display:none}
.staff-list-nav li{flex:0 0 auto;width:5.5rem}
.staff-list-nav a{position:relative;display:flex;flex-direction:column;align-items:center;padding:0 0 .5rem;color:inherit;text-align:center;text-decoration:none}
.staff-list-nav a::before{content:"";position:absolute;left:0;right:0;bottom:.5rem;height:3px;border-radius:50rem;background:#dee2e6;transition:background .2s ease}
.staff-list-nav a::after{content:"";position:absolute;left:50%;bottom:0;z-index:1;width:.9rem;height:.5rem;background:#005bac;clip-path:polygon(0 0,100% 0,50% 100%);transform:translateX(-50%);opacity:0;transition:opacity .2s ease}
.staff-list-nav a.is-active::before{background:#005bac}
.staff-list-nav a.is-active::after{opacity:1}
.staff-list-nav-photo{position:relative;display:block;width:100%;margin:0 0 1rem;overflow:hidden;border-radius:.375rem}
.staff-list-nav-photo img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#e9ecef}
.staff-list-nav-overlay{display:none}
@media (min-width:768px){
.staff-list-nav{padding:0 0 2.25rem 0}
.staff-list-nav.is-stuck{padding-top:1.5rem}
.staff-list-nav ul{gap:.5rem;padding:0;width:100%;overflow:visible}
.staff-list-nav li{flex:1 1 0;width:auto;min-width:0}
.staff-list-nav-photo{margin-bottom:1.5rem}
.staff-list-nav a:hover::before{background:#005bac}
.staff-list-nav-overlay{position:absolute;left:0;right:0;bottom:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;box-sizing:border-box;height:0;padding:0 .5rem;overflow:hidden;pointer-events:none;color:#212529;text-align:center;background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(.75rem);backdrop-filter:blur(.75rem);transition:height .35s ease,padding .35s ease}
.staff-list-nav a:hover .staff-list-nav-overlay,.staff-list-nav a:focus-visible .staff-list-nav-overlay{height:4.5rem;padding:.5rem}
.staff-list-nav-overlay>span{display:block;font-size:1rem;font-weight:400;line-height:1.1}
.staff-list-nav-overlay strong{display:block;font-size:1.25rem;font-weight:700;line-height:1.1}
.staff-list-nav-overlay small{font-weight:500}
}

.staff-list-intro{margin:3rem 0 5rem 0;text-align:center}
.staff-list-intro strong{background:linear-gradient(transparent 48%,#94d9f2 0)}

/*! 의료진 list - card (sm~ 2열 세로 / md+ 1열 좌우). gap 3rem = 기존 g-5, 거터 음수 마진 없음 */
.staff-list-items{display:flex;flex-wrap:wrap;align-items:stretch;gap:3rem;--staff-nav-gap:.75rem}
.staff-list-items>[class*="col-"]{flex:0 0 auto;width:100%;max-width:100%;padding:0}
.staff-list-items [id^="staff-"]{scroll-margin-top:calc(var(--staff-nav-h, 9.5rem) + var(--staff-nav-gap))}
@media (min-width:576px){
.staff-list-items>[class*="col-"]{width:calc((100% - 3rem) / 2)}
}
.staff-list-item{display:flex;flex-direction:column;border-radius:.375rem;background:transparent}
.staff-list-image{flex:0 0 auto;overflow:hidden;aspect-ratio:1/1;background:#e9ecef}
.staff-list-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.staff-list-content{flex:1 1 auto;display:flex;flex-direction:column;padding:1.5rem;background:#005bac;border-radius:0}
.staff-list-title{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 1.6rem 0;padding:0 0 1.2rem 0;border-bottom:1px solid rgba(255,255,255,.2)}
.staff-list-title h3{margin:0;letter-spacing:.1em;color:#fff;font-size:clamp(1.25rem,2.67vw,2rem)}
.staff-list-title h3 small{font-weight:400;letter-spacing:0;color:#fff}
.staff-list-title span{flex:0 0 7rem;display:inline-block;width:7rem;padding:.27rem 0;font-size:.9375rem;font-weight:600;color:#005bac;text-align:center;border-radius:.375rem;background:#fff}
@media (min-width:768px){
.staff-list-items{--staff-nav-gap:2rem}
.staff-list-items>[class*="col-"]{width:100%}
.staff-list-content{padding:1.75rem 1.5rem}
.staff-list-item{flex-direction:row;align-items:stretch}
.staff-list-image{flex:0 0 50%;width:50%;max-width:50%;aspect-ratio:auto;align-self:stretch}
.staff-list-content{flex:1 1 50%;width:50%;padding:3rem 3.3rem}
}
@media (min-width:992px){
.staff-list-content{padding:2.5rem 3.5rem}
.staff-list-title span{font-size:1.125rem}

}
@media (min-width:1200px){

}

/*! 의료진 list - 수술·진료분야 */
.staff-list-info{padding:.75rem 1rem;font-size:.9375rem;line-height:1.3;border-radius:.375rem;background:rgba(255,255,255,.15)}
.staff-list-info p{display:flex;align-items:flex-start;gap:.5rem;margin:0 0 .7rem}
.staff-list-info p:last-child{margin-bottom:0}
.staff-list-info strong{flex:0 0 5rem;width:5rem;color:#fff;font-weight:600;white-space:nowrap}
.staff-list-info strong+span,.staff-list-info .visually-hidden+span{flex:1 1 auto;min-width:0;display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;color:#fff;word-break:keep-all}
.staff-list-info strong+span{font-weight:600}
.staff-list-info .visually-hidden+span{gap:.35rem 1em}
.staff-list-info .visually-hidden+span>span{color:#fff;font-size:1rem;font-weight:500;white-space:nowrap}
.staff-list-info .visually-hidden+span>span::before{content:'#';margin-right:.2em;opacity:.5}

/*! 의료진 list - 약력·학회 */
.staff-list-profile{margin-top:.9rem;padding:1rem 0}
.staff-list-profile h4{margin-bottom:.875rem;padding-bottom:.375rem;color:#6baae0;font-weight:500;font-size:1rem;border-bottom:1px solid #bcd9f1}
.staff-list-profile-styled{margin:0;padding:0 0 0 1rem;list-style:none;border-left:2px solid rgba(255,255,255,.9)}
.staff-list-profile-styled li{margin-bottom:.5rem;padding:0;color:rgba(255,255,255,.9);font-size:.9375rem;line-height:1.2;word-break:keep-all}
.staff-list-profile-styled li:last-child{margin-bottom:0}
@media (min-width:768px){
.staff-list-profile-styled li{font-size:1rem}
}

/*! 의료진 list - 진료시간 테이블 */
.staff-list-table{width:100%;margin:1rem 0 0;table-layout:fixed;font-size:.875rem;background:transparent;border-top:1px solid #005bac;border-bottom:1px solid #005bac;border-left:0;border-right:0;border-collapse:separate;border-spacing:0;border-radius:.375rem;overflow:hidden}
.staff-list-table td,.staff-list-table th{padding:.29rem 0!important;font-weight:500;color:#fff;text-align:center;vertical-align:middle;border:0;border-top:0;border-bottom:1px solid #005bac;border-left:0;border-right:0;background:rgba(0,0,0,.3)}
.staff-list-table td{color:#ffc800}
.staff-list-table thead th{font-weight:500;background:rgba(0,0,0,.3);padding:.2rem 0!important;border-bottom:1px solid #005bac!important}
.staff-list-table th:not(:last-child),.staff-list-table td:not(:last-child){border-right:1px solid #005bac}
.staff-list-table thead{border-bottom:1px solid #005bac!important}

/*! 의료진 list - 진료시간 하단 안내 (진료안내·토요일·휴진) */
.staff-list-date{margin-top:1.3rem;font-size:.9375rem;line-height:1.3}
.staff-list-date p{display:flex;align-items:flex-start;gap:.5rem;margin:0 0 .5rem 0}
.staff-list-date p:last-child{margin-bottom:0}
.staff-list-date-label{flex:0 0 5rem;width:5rem;color:#ffc800;font-weight:600;white-space:nowrap}
.staff-list-date-text,.staff-list-date-dates{flex:1 1 auto;min-width:0;color:#ffc800;font-size:.9375rem;word-break:keep-all}
.staff-list-date-dates{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .7rem}
.staff-list-date-dates>span{position:relative}
.staff-list-date-dates>span+span::before{position:absolute;top:50%;left:-.37rem;width:.15rem;height:.15rem;border-radius:50%;background:rgba(255,255,255,.25);content:"";transform:translate(-50%,-50%)}

/*! 의료진 list - DESK 관리 버튼 */
.staff-list-admin{display:flex;flex-wrap:wrap;gap:.35rem;margin:1.3rem 0 0;padding:1rem 0 0;border-top:1px solid rgba(255,255,255,.2)}
.staff-list-admin .btn{flex:0 0 auto;width:auto}



/*!*******************
 *! VIEW
 *!*******************/
/*! 의료진 배경이미지 */
.staff-view-image{width:100%;min-height:18rem;background-size:cover;background-position:center top}
@media (min-width:768px){
.staff-view-image{min-height:30rem}
}
@media (min-width:1200px) {
.staff-view-image{min-height:34rem}
}
/*! 의료진 view - 의료진 상단 박스 */
.staff-view-box{height:100%;padding:2rem 1.5rem;border:1px solid rgba(0,0,0,.05);background:#f1f1f1}
.staff-view-box h2 small{font-size:1rem}
@media (min-width:1200px) {
.staff-view-box{padding:2rem 3rem}
}
/*! 의료진 view - 진료과 뱃지는 Bootstrap border-primary 사용 */
/*! 의료진 View - 약력, 학회, 논문 */
.staff-view-profile{height:100%;padding:2rem 1.5rem;border:1px solid rgba(0,0,0,.05);background:#f9f9f9}
.staff-view-profile h3{margin-bottom:1rem;padding-bottom:.875rem;color:#7d6a55;border-bottom:2px solid #7d6a55}
@media (min-width:1200px) {
.staff-view-profile{padding:3rem 3rem}
}



/*!*******************
 *! WRITE
 *!*******************/
.staff-write h3{margin:0 0 1.5rem 0;padding:0 0 1rem 0;border-bottom:2px solid #161617}
.staff-write h4{margin:1rem 0 .5rem 0;padding:.75rem 0 0 0;border-top:1px solid rgba(0,0,0,.055)}

@media (min-width:1200px){
.staff-write-wrap{padding-left:1.5rem;border-left:1px solid rgba(0,0,0,.055)}
}

.staff-write-info{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(0,0,0,.055)}

/*! 의료진 Write - 진료과 선택 */
.staff-write ul{display:flex;flex-wrap:wrap;gap:.3rem;list-style:none;margin:0;padding:0}
.staff-write ul li{display:flex;flex:0 0 calc(50% - .15rem)}

/* 의료진 Write - 소속센터 소개 선택버튼 */
.staff-write-btn{flex:1;padding:.4rem .1rem;color:#fff;font-size:.875rem;border-radius:.25rem;border-color:#161617;background-color:#161617}
.btn-check:not(:checked)+.staff-write-btn:focus,
.btn-check:not(:checked)+.staff-write-btn:hover{color:#fff!important;border-color:#161617!important;background-color:#161617!important}
.staff-write-btn:active,.btn-check:active+.staff-write-btn,.btn-check:checked+.staff-write-btn{color:#fff!important;border-color:#005bac!important;background-color:#005bac!important}


/*!*******************
 *! STAFF WRITE : write.skin + desk/staff_time.php 공통 (단일 소스)
 *!*******************/
/*! 의료진 Write - 진료시간 일괄수정 테이블용 */
/* inline-block + min-width:100% → 테이블보다 좁아지지 않고, 가로 스크롤 시 wrap(테두리·배경)도 함께 늘어남 */
.staff-write-table-wrap{display:inline-block;min-width:100%;vertical-align:top;padding:.25rem .25rem;border-radius:.25rem;border:1px solid #dee2e6;background:#f8f9fa}
/* 모바일: 테이블이 %로 줄어들지 않게 최소 너비 → table-responsive 가로 스크롤 */
.staff-write-table{margin:0;min-width:42rem}
.staff-write-table th,.staff-write-table td{padding:.25rem .5rem!important;color:#5a5a5a!important;font-weight:400!important;text-align:center;border:0!important;background:#f8f9fa!important}
.staff-write-table th{padding:0 .25rem!important;font-size:.8125rem!important}
.staff-write-table thead{border-bottom:0!important}
/* 진료/수술/텍스트 — 개별 버튼·필드로 분리 */
.staff-write-slot{display:flex;flex-wrap:nowrap;align-items:center;gap:.15rem;min-width:0}
/* flex만 유지 — 크기·패딩은 form-control-sm이 btn-sm과 맞춤 */
.staff-write-slot .form-control{flex:1 1 auto;min-width:0}
/*! 의료진 Write - 진료시간 일괄수정 버튼용 (개별 라운드) */
/* btn-sm(종일·오전·오후)과 동일 크기 — 좁은 셀에서도 줄바꿈 방지 */
.staff-write-btn-xs,.staff-write-btn02-xs{flex:0 0 auto;white-space:nowrap;padding:.25rem .5rem!important;font-size:.875rem;line-height:1.5;color:#161617;border-radius:.25rem!important;border-color:#dee2e6;background-color:#fff}
.staff-write-btn-xs:active,.btn-check:active+.staff-write-btn-xs,.btn-check:checked+.staff-write-btn-xs,
.staff-write-btn-xs:focus,.staff-write-btn-xs:hover{color:#fff!important;border-color:rgba(255,255,255,0)!important;background-color:#005bac!important}
.staff-write-btn02-xs:active,.btn-check:active+.staff-write-btn02-xs,.btn-check:checked+.staff-write-btn02-xs,
.staff-write-btn02-xs:focus,.staff-write-btn02-xs:hover{color:#fff!important;border-color:rgba(255,255,255,0)!important;background-color:#198754!important}
/*! 의료진 Write - 토요일, 일요일 플로팅 라벨 고정용 */
.staff-write-floating-label{color:#999!important;transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem) !important}
/*! 의료진 Write - Textarea 높이 */
.staff-write-textarea-sm{height:4.75rem!important}
.staff-write-textarea-md{height:7.3rem!important}
.staff-write-textarea-lg{height:18rem!important}
/*! 의료진 Write - 휴진일(tm_47) 목록 (모바일 1열 / md 이상 좌우 3열) */
.staff-closed-list{display:grid;grid-template-columns:1fr;gap:.5rem;padding:.75rem;border:1px solid #dee2e6;border-top:0;border-radius:0 0 .25rem .25rem;background:#fff}
@media (min-width:768px){
.staff-closed-list{grid-template-columns:1fr 1fr 1fr}
}
.staff-closed-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.15rem;padding:.4rem;border:1px solid #dee2e6;border-radius:.25rem;background:#f8f9fa}
.staff-closed-date{flex:0 1 auto;margin-right:.5rem;font-size:.9375rem;color:#005bac}
.staff-closed-radios{display:inline-flex;flex:0 0 auto;flex-wrap:wrap;gap:.15rem;align-items:center}
.staff-closed-del{flex:0 0 auto}
.staff-closed-radios .btn:hover,
.staff-closed-radios .btn:focus,
.staff-closed-radios .btn:active,
.staff-closed-radios .btn-check:checked+.btn,
.staff-closed-radios .btn-check:active+.btn,
.staff-closed-del:hover,
.staff-closed-del:focus,
.staff-closed-del:active{
color:#005bac!important;background-color:#fff!important;border-color:#005bac;box-shadow:none
}
