/* 생기한의원 치료 전후 사례 롤링 — 질환 페이지 · 지점 페이지 · 메인 '치료 전후 사진' 공용 (2026-10-28)
 * 사례 카드 안쪽 모양(전·후 표시, 날짜, 치료기간 막대)은 기존 sub.css 의 .hs_board_bna_list 스타일을 그대로 사용 */
.skcs{position:relative}
.skcs .skcs-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 20px}
.skcs .skcs-heading{margin:0;font-size:20px;line-height:1.45;font-weight:700;color:#1b1b1b;letter-spacing:-.02em;word-break:keep-all}
.skcs .skcs-sub{display:inline-block;margin-left:8px;padding:3px 10px;border-radius:999px;background:#e9f6f4;color:#00756e;font-size:13px;line-height:1.5;font-weight:600;vertical-align:2px;letter-spacing:0}
.skcs .skcs-controls{display:flex;align-items:center;gap:6px;flex:none}
.skcs .skcs-btn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;margin:0;padding:0;border:1px solid #c9dcd5;border-radius:50%;background:#fff;color:#174d43;font:inherit;font-size:17px;line-height:1;cursor:pointer;transition:border-color .2s,color .2s,background-color .2s}
.skcs .skcs-btn:hover{border-color:#009f96;color:#009f96}
.skcs .skcs-btn:disabled{opacity:.35;cursor:default}
.skcs .skcs-btn:focus-visible,.skcs .skcs-viewport:focus-visible{outline:3px solid #126fbb;outline-offset:3px}
.skcs .skcs-count{min-width:64px;text-align:center;font-size:15px;color:#666;font-variant-numeric:tabular-nums;white-space:nowrap}
.skcs .skcs-count b{color:#1b1b1b;font-weight:700}

/* 사진 영역 : 기존 .hs_board_bna_list(가로 2칸 배치) 대신 한 줄로 이어 붙여 옆으로 이동 */
.skcs .skcs-viewport{display:block;position:relative;overflow:hidden;outline:none}
.skcs .skcs-track{display:flex;flex-wrap:nowrap;align-items:stretch;margin:0;padding:0;list-style:none;will-change:transform;transform:translate3d(0,0,0);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}
.skcs.is-ready .skcs-viewport,.skcs.is-ready .skcs-track{touch-action:pan-y}   /* 가로 밀기는 롤링이 처리, 세로는 페이지 스크롤 (스크립트 준비 후에만) */
.skcs .skcs-item{flex:0 0 calc((100% - 28px) / 2);width:calc((100% - 28px) / 2);min-width:0;margin:0 28px 0 0;padding:0;list-style:none;box-sizing:border-box}
.skcs .skcs-item .hs_board_list_link{height:100%;-webkit-user-drag:none}
.skcs .skcs-item .img_box2 .img_wrap{overflow:hidden;background:#eef2f1}
.skcs .skcs-item .img_box2 .img_wrap img{display:block;width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;-webkit-user-drag:none;pointer-events:none}
.skcs .skcs-item .txt_box{box-sizing:border-box}
.skcs.is-dragging .skcs-track{cursor:grabbing}
.skcs.is-dragging .skcs-item a{pointer-events:none}

/* 로그인 전 '후' 사진을 아예 출력하지 않는 설정(hidden)일 때의 빈 칸 */
.skcs .skcs-ph{display:block;width:100%;aspect-ratio:3 / 2;background:linear-gradient(135deg,#d9e3e0,#c3d1cd)}
.skcs .skcs-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

.skcs .skcs-note{margin:18px 0 0;font-size:13px;line-height:1.6;color:#666;word-break:keep-all}   /* 표기 사항 — 작아도 읽히는 대비(4.5:1 이상) */

/* 아래 구분선은 사진 영역이 아니라 안내 문구까지 포함한 바깥 상자에 (질환 페이지 기존 간격 그대로) · 지점 페이지는 기존처럼 구분선 없음 */
#hs_cont_review .skcs .skcs-viewport{padding-bottom:0;margin-bottom:0;border-bottom:0}
#hs_cont_review .skcs--disease .skcs-body{padding-bottom:6rem;margin-bottom:6rem;border-bottom:1px solid #666}

/* 메인 치료후기(#main-cont05) : 기존 '2건 세로 배치'를 한 세트로 묶어 세트 단위로 넘김 — 기존 메인 레이아웃·간격 그대로 */
.skcs--sets .skcs-item{flex:0 0 100%;width:100%;margin:0 40px 0 0}
.skcs--sets>.title .skcs-controls{margin-left:auto}
.skcs--sets>.title .skcs-btn{width:3rem;height:3rem;min-width:28px;min-height:28px;font-size:14px;font-weight:400}   /* 옆 '→' 동그라미와 같은 크기 → 제목 줄 높이 그대로 */
.skcs--sets .skcs-viewport{padding-bottom:6px;margin-bottom:-6px}   /* 마지막 줄 지점 표시가 잘리지 않게 (전체 높이는 그대로) */
.skcs--sets>.title .skcs-count{min-width:54px;font-size:15px;font-weight:400}
#main-cont05 .skcs--sets .before-after-list .thumb img{aspect-ratio:3 / 2;height:auto;-webkit-user-drag:none;pointer-events:none}

/* 메인 '치료 전후 사진'(#main-case) : 영상후기와 나눈 별도 영역. 2건 = 1세트를 PC는 가로로 나란히, 모바일은 세로로 놓고 세트 단위로 넘김 */
#main-case{width:100%;max-width:156rem;margin:0 auto;padding:18rem 3rem 0;background-color:#fff}
.skcs-main .skcs-main-panel[hidden]{display:none!important}
.skcs-main .skcs--main .skcs-bar{margin:0 0 3rem}
.skcs-main .skcs--main .skcs-heading{font-size:2.4rem}
.skcs-main .skcs--main .skcs-sub{font-size:1.4rem}
.skcs--main .skcs-item{flex:0 0 100%;width:100%;margin:0 4rem 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4rem;align-content:start}
.skcs--main .skcs-case{min-width:0;margin:0;padding:0;list-style:none}
.skcs--main .skcs-case-link{display:block;color:inherit;text-decoration:none;-webkit-user-drag:none}
.skcs--main .skcs-pair{display:flex;gap:1rem}
.skcs--main .skcs-shot{position:relative;flex:1 1 0;min-width:0;overflow:hidden;background:#eef2f1}
.skcs--main .skcs-shot img{display:block;width:100%;max-width:none;height:auto;aspect-ratio:3 / 2;object-fit:cover;-webkit-user-drag:none;pointer-events:none}
.skcs--main .skcs-lb{position:absolute;left:1rem;top:1rem;z-index:2;padding:.5rem 1rem;border-radius:.4rem;background:rgba(27,27,27,.62);color:#fff;font-size:1.3rem;line-height:1.3;font-weight:600;white-space:nowrap;pointer-events:none}   /* 촬영 시기 표시 */
.skcs--main .skcs-shot--after .skcs-lb{background:rgba(0,128,128,.9)}
.skcs--main .skcs-lb em{margin-left:.2rem;font-style:normal;font-weight:400;opacity:.9}
.skcs--main .skcs-shot.is-cover:before{content:"로그인이 필요합니다.";position:absolute;left:0;top:0;right:0;bottom:0;z-index:1;background:rgba(0,0,0,.5);color:rgba(255,255,255,.85);font-size:1.6rem;font-weight:500;display:flex;align-items:center;justify-content:center}
.skcs--main .skcs-cap{min-width:0;margin-top:2.4rem;display:flex;align-items:center;justify-content:center;gap:1rem}
.skcs--main .skcs-cap-tit{min-width:0;margin:0;font-size:2.2rem;line-height:1.3;color:#1b1b1b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.skcs--main .skcs-cap-br{flex:none;min-width:5.4rem;height:2.4rem;margin:0;padding:0 1rem;border-radius:999px;background:var(--point,#00a2a2);color:#fff;font-size:1.4rem;line-height:1;display:flex;align-items:center;justify-content:center}
.skcs-main .skcs-main-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;column-gap:2rem}
.skcs-main .skcs-main-head .skcs-more{flex:none;margin-bottom:6.5rem}   /* 제목(m-title) 아래 여백과 높이 맞춤 */
.skcs-main>.skcs-note{margin:4.5rem 0 0;padding-top:2.2rem;border-top:1px solid #e3e8e7;font-size:1.3rem;line-height:1.6;color:#666;word-break:keep-all}   /* 표기 사항 한 줄 */

/* 스크립트가 실행되기 전 · 실행되지 않을 때 : 손가락으로 옆으로 밀어서 볼 수 있게 */
.skcs:not(.is-ready) .skcs-viewport{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.skcs:not(.is-ready) .skcs-viewport::-webkit-scrollbar{display:none}
.skcs:not(.is-ready) .skcs-item{scroll-snap-align:start}
.skcs:not(.is-ready) .skcs-controls{visibility:hidden}
.skcs.is-static .skcs-controls{display:none}

@media only screen and (max-width:840px){
	.skcs .skcs-bar{margin-bottom:16px;gap:10px}
	.skcs .skcs-heading{font-size:17px}
	.skcs .skcs-sub{font-size:12px;padding:2px 8px;margin-left:6px}
	.skcs .skcs-btn{width:38px;height:38px;font-size:15px}
	.skcs .skcs-count{min-width:52px;font-size:14px}
	.skcs .skcs-item{flex-basis:100%;width:100%;margin-right:16px}
	.skcs .skcs-item .txt_box{padding:18px 12px;font-size:14px}
	.skcs .skcs-item .img_box2 .img_wrap .img_date{right:8px;bottom:8px}
	.skcs .skcs-note{font-size:12.5px}
	#main-case{padding:11.5rem 3rem 0}
	.skcs-main .skcs--main .skcs-heading{font-size:2.6rem}
	.skcs-main .skcs--main .skcs-sub{font-size:1.8rem}
	.skcs--main .skcs-item{grid-template-columns:minmax(0,1fr);gap:4.5rem}
	.skcs--main .skcs-lb{left:1.2rem;top:1.2rem;padding:.6rem 1.2rem;font-size:1.8rem}
	.skcs--main .skcs-shot.is-cover:before{font-size:2rem}
	.skcs--main .skcs-cap{margin-top:2rem}
	.skcs--main .skcs-cap-br{height:3rem;font-size:1.8rem}
	.skcs-main .skcs-main-head{display:block}   /* 모바일: 제목 바로 아래에 '치료사례 더보기' */
	.skcs-main .skcs-main-head .m-title{padding-bottom:2.6rem}
	.skcs-main .skcs-main-head .skcs-more{display:inline-flex;margin-bottom:6.5rem;font-size:2.2rem}
	.skcs-main>.skcs-note{margin-top:5rem;font-size:2rem}
}
@media only screen and (max-width:400px){
	.skcs .skcs-heading .skcs-sub{display:none}
}
@media (prefers-reduced-motion:reduce){
	.skcs .skcs-track{transition:none!important}
}
