@charset "utf-8";

/* cases 전용 테이블 tbody 스타일 */
.table-list tbody{border-top:1px solid var(--main-color);border-bottom:1px solid var(--main-color)}


/* cases 전용 view 스타일 */
.tm-v-body{max-width:unset}
.tm-v-head{text-align:center;padding-bottom:20px;border-bottom:none}
.tm-v-title{margin-bottom:0}
.tm-v-subj{font-size:64px;font-weight:700;color:#111;display:block;text-align: left;}
.case-header-separator{width:100%;height:1px;background:var(--main-color);margin:20px 0}
.case-images{margin:40px 0}
.case-images-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:30px;align-items:start}
.case-image-item{background:#fff;border-radius:20px;overflow:hidden;display:block;text-decoration:none;color:inherit}
.case-image-wrap{padding:0;}
.case-image-wrap img{width:100%;aspect-ratio:850/500;display:block;object-fit:cover}
.case-image-info{padding: 70px 40px;background: #F9F9F9;}
.case-patient-title{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.case-list-title{justify-content:space-between}
.case-patient-left{display:flex;align-items:center;gap:12px}
.case-age-badge{display:inline-block;padding:6px 14px;background:transparent;border:1px solid var(--main-color);color:var(--main-color);border-radius:999px;font-size: 24px;font-weight:600;min-width:50px;text-align:center}
.case-patient-name{font-size: 46px;font-weight:700;}
.case-patient-suffix{font-size:36px;}
.case-post-date{font-size:20px;color:var(--grey-3-color);white-space:nowrap}
.case-info-separator{width:100%;height:1px;background:#e5e7eb;margin:28px 0}
.case-info-rows{display:flex;flex-direction:column;gap:12px}
.case-info-row{display:flex;align-items:center;gap: 24px;}
.case-info-label{display:inline-block;padding: 16px 24px;background: var(--grey-3-color);color:#fff;border-radius:999px;font-size: 24px;white-space:nowrap}
.case-info-value{font-size: 28px;font-weight:700;color:#111}

/* cases 전용 액션 버튼 스타일 */
.tm-view .tm-v-actions{margin:60px auto 40px;padding-top:30px;border-top:1px solid var(--main-color)}
.tm-view .tm-v-actions .btn_action.outline{background:#fff;border:1px solid var(--main-color);color:var(--main-color)}

@media(max-width:1024px){
  .tm-v-head{padding-bottom:16px}
  .tm-v-subj{font-size:28px;line-height:1.3}
  .case-header-separator{margin:12px 0}
  .case-treatment-info{padding:10px 0;font-size:13px;margin-top: 20px;}
  .case-treatment-info .treatment-type{font-size:16px}
  .case-treatment-info .treatment-separator{margin:0 8px}
  .case-treatment-info .treatment-date{font-size:16px}
  .case-images{margin:30px 0}
  .case-images-grid{grid-template-columns:1fr;gap:20px}
  .case-image-wrap img{aspect-ratio:850/500;object-fit:cover}
  .case-image-info{padding:24px 16px}
  .case-patient-title{flex-wrap:wrap;gap:8px;margin-bottom:12px}
  .case-list-title{justify-content:flex-start}
  .case-patient-left{flex-wrap:wrap;gap:8px}
  .case-post-date{font-size:13px}
  .case-age-badge{font-size:16px;padding:4px 12px;min-width:40px}
  .case-patient-name{font-size:20px;line-height:1.3}
  .case-patient-suffix{font-size:16px}
  .case-info-separator{margin:12px 0}
  .case-info-rows{gap:10px}
  .case-info-row{flex-wrap:wrap;gap:10px;}
  .case-info-label{font-size:14px;padding:8px 16px}
  .case-info-value{font-size:16px;line-height:1.4}
  .tm-view .tm-v-actions{margin:40px auto 30px;padding-top:20px;gap:8px;flex-wrap:wrap;justify-content:center}
  .tm-view .tm-v-actions .btn_action.arrow{width:36px;height:36px;min-width:36px}
}

/* cases 전용 카드 그리드 */
.card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.card-wrapper{display:flex;flex-direction:column;gap:8px}
.card-item{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,0.08)}
.card-link{display:block;color:inherit;text-decoration:none}
.card-thumb{position:relative;aspect-ratio:850/500;background:#f3f4f6;overflow:hidden}
.card-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.card-badge{position:absolute;top:12px;left:12px;padding:6px 16px;background:var(--main-color);color:#fff;font-size:14px;font-weight:600;border-radius:20px;box-shadow:0 2px 4px rgba(0,0,0,0.1)}
.card-body{padding:30px 24px;background:var(--grey-1);min-height:260px;display:flex;flex-direction:column}
.card-title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:22px;line-height:1.4;color:#111;font-weight:bold;margin-bottom:20px}
.card-info{flex:1;margin-bottom:16px}
.card-info-row{margin-bottom:12px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.card-info-row:last-child{margin-bottom:0}
.info-item{display:inline-block;padding:4px 12px;background:#fff;border-radius:6px;font-size:15px;color:#374151;font-weight:500}
.info-label{font-size:14px;color:#6b7280;font-weight:500}
.info-value{font-size:15px;color:#111;font-weight:500}
.card-category{display:inline-block;padding:6px 14px;background:var(--main-color);color:#fff;font-size:13px;font-weight:600;border-radius:6px;margin-top:8px}
.card-meta{display:flex;gap:8px;align-items:center;color:#9296A5;font-size:15px;padding-top:12px;border-top:1px solid #e5e7eb}
.card-date{font-size:15px}

@media(max-width:1024px){
  .card-grid{grid-template-columns:1fr;gap:16px}
  .card-title{height:auto}
  .card-body{min-height:auto}
}
