@charset "utf-8";

.org-chart-wrap {
    overflow-x: auto;
    overscroll-behavior-x: contain;
    padding: 20px 0;
}

/* 기존 디자인을 유지하며 새 조직 구성에 맞춰 배치한다. */
.org-tree-viewport {
    container-type: inline-size;
    width: 100%;
    max-width: 1519px;
    min-width: 900px;
    aspect-ratio: 1519 / 925;
    margin: 12px auto 40px;
    position: relative;
}

.org-tree {
    position: absolute;
    top: 0;
    left: 0;
    width: 1519px;
    height: 925px;
    transform: scale(calc(100cqw / 1519px));
    transform-origin: top left;
}

.org-tree-node {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    border-radius: 8px;
    font-size: 18px;
    font-weight: var(--font-weight-medium);
}

.org-tree-node--college {
    left: 670px;
    top: 0;
    width: 179px;
    height: 179px;
    flex-direction: column;
    gap: 6px;
    border-radius: 50%;
    border: 9px solid color-mix(in srgb, var(--color-primary-pressed) 45%, transparent);
    background: var(--color-primary);
    color: var(--color-white);
    font-size: 20px;
    font-weight: var(--font-weight-semibold);
}

.org-tree-node--tier-one {
    height: 61px;
    background: var(--color-primary);
    color: var(--color-white);
    font-weight: var(--font-weight-semibold);
}
.org-tree-node--tier-one { top: 249px; }
.org-tree-node--council    { left: 399px; width: 220px; }
.org-tree-node--dean       { left: 650px; width: 220px; }
.org-tree-node--foundation { left: 907px; width: 220px; }

.org-tree-node--tier-two {
    height: 61px;
    background: var(--color-gray50);
    color: var(--color-primary-pressed);
}
.org-tree-node--tier-two { top: 370px; width: 219px; }
.org-tree-node--museum-director    { left: 0; }
.org-tree-node--admin-director     { left: 260px; }
.org-tree-node--education-dean     { left: 520px; }
.org-tree-node--affairs-dean       { left: 780px; }
.org-tree-node--planning-dean      { left: 1040px; }
.org-tree-node--scientist-director { left: 1300px; line-height: 1.35; }

.org-tree-node--tier-three,
.org-tree-node--tier-four {
    height: 57px;
    border: 1px solid var(--color-border-base);
    background: var(--color-white);
    color: var(--color-text-body);
    font-weight: var(--font-weight-regular);
    font-size: 16px;
}
.org-tree-node--tier-three { width: 219px; }
.org-tree-node--general-team-chief { left: 260px; top: 480px; }
.org-tree-node--academic-team-chief { left: 260px; top: 555px; }
.org-tree-node--facilities-team-chief { left: 260px; top: 630px; }
.org-tree-node--med-edu-chief { left: 520px; top: 480px; }
.org-tree-node--counseling-chief { left: 520px; top: 555px; }
.org-tree-node--med-dept-head { left: 780px; top: 480px; }
.org-tree-node--basic-med-chief { left: 780px; top: 555px; }
.org-tree-node--clinical-med-chief { left: 780px; top: 630px; }
.org-tree-node--clinical-skill-chief { left: 780px; top: 705px; }
.org-tree-node--grad-med-chief { left: 1040px; top: 480px; }
.org-tree-node--grad-sci-chief { left: 1040px; top: 555px; }
.org-tree-node--med-info-chief { left: 1040px; top: 630px; }

.org-tree-node--tier-four { top: 850px; width: 160px; line-height: 1.35; }
.org-tree-node--premed-year-one { left: 210px; }
.org-tree-node--premed-year-two { left: 398px; }
.org-tree-node--med-year-one { left: 586px; }
.org-tree-node--med-year-two { left: 774px; }
.org-tree-node--med-year-three { left: 962px; }
.org-tree-node--med-year-four { left: 1150px; }

.org-tree-line {
    position: absolute;
    background: var(--color-gray500);
}
.org-tree-line--college-entry { left: 759.5px; top: 179px; width: 1px; height: 43px; }
.org-tree-line--tier-one-bar { left: 509px; top: 222px; width: 508px; height: 1px; }
.org-tree-line--tier-one-council { left: 509px; top: 222px; width: 1px; height: 27px; }
.org-tree-line--tier-one-dean { left: 760px; top: 222px; width: 1px; height: 27px; }
.org-tree-line--tier-one-foundation { left: 1017px; top: 222px; width: 1px; height: 27px; }
.org-tree-line--dean-entry { left: 760px; top: 310px; width: 1px; height: 35px; }
.org-tree-line--tier-two-bar { left: 109.5px; top: 345px; width: 1300px; height: 1px; }
.org-tree-line--tier-two-museum { left: 109.5px; top: 345px; width: 1px; height: 25px; }
.org-tree-line--tier-two-admin { left: 369.5px; top: 345px; width: 1px; height: 25px; }
.org-tree-line--tier-two-education { left: 629.5px; top: 345px; width: 1px; height: 25px; }
.org-tree-line--tier-two-affairs { left: 889.5px; top: 345px; width: 1px; height: 25px; }
.org-tree-line--tier-two-planning { left: 1149.5px; top: 345px; width: 1px; height: 25px; }
.org-tree-line--tier-two-scientist { left: 1409.5px; top: 345px; width: 1px; height: 25px; }
.org-tree-line--admin-entry { left: 369.5px; top: 431px; width: 1px; height: 49px; }
.org-tree-line--admin-stack-0 { left: 369.5px; top: 537px; width: 1px; height: 18px; }
.org-tree-line--admin-stack-1 { left: 369.5px; top: 612px; width: 1px; height: 18px; }
.org-tree-line--education-entry { left: 629.5px; top: 431px; width: 1px; height: 49px; }
.org-tree-line--education-stack-0 { left: 629.5px; top: 537px; width: 1px; height: 18px; }
.org-tree-line--affairs-entry { left: 889.5px; top: 431px; width: 1px; height: 49px; }
.org-tree-line--affairs-stack-0 { left: 889.5px; top: 537px; width: 1px; height: 18px; }
.org-tree-line--affairs-stack-1 { left: 889.5px; top: 612px; width: 1px; height: 18px; }
.org-tree-line--affairs-stack-2 { left: 889.5px; top: 687px; width: 1px; height: 18px; }
.org-tree-line--planning-entry { left: 1149.5px; top: 431px; width: 1px; height: 49px; }
.org-tree-line--planning-stack-0 { left: 1149.5px; top: 537px; width: 1px; height: 18px; }
.org-tree-line--planning-stack-1 { left: 1149.5px; top: 612px; width: 1px; height: 18px; }
.org-tree-line--grade-entry { left: 629.5px; top: 612px; width: 1px; height: 195px; }
.org-tree-line--grade-bar { left: 290px; top: 807px; width: 940px; height: 1px; }
.org-tree-line--grade-0 { left: 290px; top: 807px; width: 1px; height: 43px; }
.org-tree-line--grade-1 { left: 478px; top: 807px; width: 1px; height: 43px; }
.org-tree-line--grade-2 { left: 666px; top: 807px; width: 1px; height: 43px; }
.org-tree-line--grade-3 { left: 854px; top: 807px; width: 1px; height: 43px; }
.org-tree-line--grade-4 { left: 1042px; top: 807px; width: 1px; height: 43px; }
.org-tree-line--grade-5 { left: 1230px; top: 807px; width: 1px; height: 43px; }

.org-card-body p span{ color: #2c8f7b; font-weight: 700;}

.org-cards {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 28px;
    margin-top: var(--board-gap-xl);
}

@media (max-width: 1024px) {
    .org-cards {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .org-cards {
        grid-template-columns: 1fr;
    }
}

.org-card {
    flex: 1 0 0;
    min-width: 0;
}

.org-card-head {
    padding: 15px;
    background: var(--color-primary);
    border: 1px solid var(--color-gray300);
    color: var(--color-white);
    font-size: 16px;
    font-weight: var(--font-weight-semibold);
    text-align: center;
}

.org-card-body {
    padding: 15px;
    border: 1px solid var(--color-gray300);
    border-top: none;
    font-size: 16px;
    line-height: 24px;
    color: var(--color-text-body);
}

.org-card-body p {
    margin-top: 8px;
}

.org-card-body p:first-child {
    margin-top: 0;
}

.org-card-body ul {
    list-style: none;
    padding-left: 20px;
}

.org-card-body li {
    position: relative;
}

.org-card-body li::before {
    content: "";
    position: absolute;
    left: -14px;
    top: 10px;
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: currentColor;
}
