/**
 * Society: Poseify style.css 는 var(--bs-*) 를 쓰므로 변수만 제공하고,
 * BS5 전역(bootstrap.min.css)은 로드하지 않아 KAMA 헤더와 충돌하지 않게 합니다.
 * 그리드·container·row·col-* 는 사이트 기존 Bootstrap 4 를 사용합니다.
 */
:root {
    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #ffc107;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-black: #000;
    --bs-white: #fff;
    --bs-gray: #6c757d;
    --bs-gray-dark: #343a40;
    --bs-gray-100: #f8f9fa;
    --bs-gray-200: #e9ecef;
    --bs-gray-300: #dee2e6;
    --bs-primary: #0d6efd;
    --bs-secondary: #6c757d;
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
}

/* BS5 row gutter (BS4 그리드와 함께 사용) */
.row.g-0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.row.g-0 > [class*="col"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.row.g-4 {
    margin-left: -0.75rem !important;
    margin-right: -0.75rem !important;
}
.row.g-4 > [class*="col"] {
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
}

.row.g-5 {
    margin-left: -1rem !important;
    margin-right: -1rem !important;
}
.row.g-5 > [class*="col"] {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
}

.fs-5 {
    font-size: 1.25rem !important;
}

.display-1 {
    font-size: 5rem;
    font-weight: 300;
    line-height: 1.2;
}

@media (min-width: 768px) {
    .order-md-1 {
        order: 1;
    }
    .text-md-end {
        text-align: right !important;
    }
}

.text-body {
    color: #212529 !important;
}

.top-0 {
    top: 0 !important;
}
.end-0 {
    right: 0 !important;
    left: auto !important;
}

/* Society 팀 그리드: 검은 배경 + 카드 사이 세로 간격 */
.society-team-section {
    background-color: #000;
}

.society-team-section .row:not(.society-layout-row) {
    margin-bottom: -2rem;
}

.society-team-section .row:not(.society-layout-row) > [class*="col-"] {
    margin-bottom: 2rem;
}

/* Doctors + clinic sidebar: 바깥 행은 그리드 음수 마진 미적용 */
.society-team-section .society-layout-row {
    margin-bottom: 0;
}

.society-team-section .society-layout-row > [class*="col-"] {
    margin-bottom: 1.5rem;
}

.society-clinic-list.list-group {
    background: #1a1a1a;
    border-color: #333;
}

.society-clinic-list .list-group-item {
    cursor: pointer;
    background: #1a1a1a;
    border-color: #333;
    color: #e0e0e0;
}

.society-clinic-list .list-group-item:hover {
    background: #2a2a2a;
    color: #fff;
}

.society-clinic-list .list-group-item.active {
    background: var(--bs-primary, #0d6efd);
    border-color: var(--bs-primary, #0d6efd);
    color: #fff;
}

.society-team-section .team-item .team-name h5 {
    color: #fff;
}

/* 호버: 왼쪽에서 오른쪽으로 한 패널만 펼침 · 라벨 40% / 값 60% */
.society-team-section .team-item .team-body > .img-fluid {
    position: relative;
    z-index: 0;
    display: block;
    width: 100%;
}

.society-team-section .team-hover-panel {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
    width: 0;
    max-width: 100%;
    height: calc(100% - 60px);
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    overflow: hidden;
    transition: width 0.5s ease;
    box-sizing: border-box;
}

.society-team-section .team-item:hover .team-hover-panel {
    width: 100%;
}

.society-team-section .team-item .team-body .team-hover-panel .team-before,
.society-team-section .team-item .team-body .team-hover-panel .team-after {
    position: relative;
    left: auto;
    right: auto;
    top: auto;
    width: auto;
    height: auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    background: transparent;
    transition: none;
}

.society-team-section .team-item .team-body .team-hover-panel .team-before {
    flex: 0 0 40%;
    max-width: 40%;
    text-align: right;
    padding-right: 0.35rem;
    box-sizing: border-box;
}

.society-team-section .team-item .team-body .team-hover-panel .team-after {
    flex: 0 0 60%;
    max-width: 60%;
    text-align: left;
    padding-left: 0.35rem;
    box-sizing: border-box;
}

.society-team-section .team-item:hover .team-body .team-hover-panel .team-before,
.society-team-section .team-item:hover .team-body .team-hover-panel .team-after {
    width: auto;
}

.society-team-section .team-item .team-body .team-hover-panel .team-before span,
.society-team-section .team-item .team-body .team-hover-panel .team-after span {
    font-size: 0.8125rem;
    line-height: 1.35;
    opacity: 0;
    transition: opacity 0.5s;
}

.society-team-section .team-item:hover .team-body .team-hover-panel .team-before span,
.society-team-section .team-item:hover .team-body .team-hover-panel .team-after span {
    opacity: 1;
    transition-delay: 0.2s;
}
