/* 편입 모집요강 허브 (/guidelines) - 260904. site1 토큰(--accent:#003384) 기반 */

/* ── 레이아웃: 좌 사이드바 + 우 본문 ── */
.gdLayout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:32px;align-items:start;margin-top:8px}
.gdMain{min-width:0}

/* ── 사이드바 ── */
.gdSide{position:sticky;top:96px}
.gdSide__toggle{display:none}
.gdSide__nav{display:flex;flex-direction:column;gap:2px;border:1px solid var(--border);border-radius:14px;padding:14px;background:var(--card)}
.gdSide__all{display:flex;align-items:center;min-height:44px;padding:0 12px;border-radius:10px;font-weight:800;font-size:15px;color:var(--text);text-decoration:none}
.gdSide__all:hover{background:rgba(0,51,132,.05)}
.gdSide__all.is-active{background:rgba(0,51,132,.08);color:var(--accent)}
.gdSide__group{margin-top:6px}
.gdSide__parent{display:flex;align-items:center;min-height:40px;padding:0 12px;font-weight:800;font-size:14px;color:var(--text);text-decoration:none;border-radius:10px}
.gdSide__parent:hover{background:rgba(0,51,132,.05)}
.gdSide__parent.is-active{color:var(--accent)}
.gdSide__children{list-style:none;margin:0;padding:0 0 4px}
.gdSide__children a{display:flex;align-items:center;min-height:38px;padding:0 12px 0 24px;font-size:14px;color:var(--muted);text-decoration:none;border-radius:10px}
.gdSide__children a:hover{background:rgba(0,51,132,.05);color:var(--text)}
.gdSide__children a.is-active{color:var(--accent);font-weight:700;background:rgba(0,51,132,.07)}
.gdSide__cta{display:flex;align-items:center;justify-content:center;min-height:46px;margin-top:12px;border-radius:12px;background:var(--accent);color:#fff;font-weight:800;font-size:14px;text-decoration:none}
.gdSide__cta:hover{background:#00296b}

/* ── 대학 칩 ── */
.gdUnivChips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.gdUnivChip{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border:1px solid var(--border);border-radius:999px;font-size:14px;font-weight:700;color:var(--text);text-decoration:none;background:var(--card)}
.gdUnivChip:hover{border-color:var(--accent);color:var(--accent)}
.gdUnivChip span{font-size:12px;color:var(--muted);font-weight:600}

/* ── 목록 테이블 ── */
.gdCount{font-size:14px;color:var(--muted);margin-bottom:10px}
.gdCount strong{color:var(--accent)}
.gdTableWrap{overflow-x:auto;border:1px solid var(--border);border-radius:14px;background:var(--card)}
.gdTable{width:100%;border-collapse:collapse;font-size:15px}
.gdTable th{padding:12px 16px;text-align:left;font-size:13px;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap;background:rgba(15,23,42,.02)}
.gdTable td{padding:13px 16px;border-bottom:1px solid rgba(15,23,42,.06);vertical-align:middle}
.gdTable tr:last-child td{border-bottom:none}
.gdTable__cat{width:150px;white-space:nowrap}
.gdTable__date,.gdTable__views{width:90px;white-space:nowrap;color:var(--muted);font-size:13px;text-align:center}
.gdTable__title{color:var(--text);text-decoration:none;font-weight:600;line-height:1.45;display:inline-flex;align-items:center;gap:6px;min-height:24px}
.gdTable__title:hover{color:var(--accent);text-decoration:underline}
.gdTable__empty{text-align:center;padding:48px 16px !important;color:var(--muted)}
.gdBadge{display:inline-flex;align-items:center;min-height:24px;padding:1px 9px;border-radius:6px;background:rgba(0,51,132,.07);color:var(--accent);font-size:12px;font-weight:700;text-decoration:none;margin-right:4px}
.gdBadge--muted{background:rgba(15,23,42,.05);color:var(--muted)}
.gdNew{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#ef4444;color:#fff;font-size:11px;font-weight:900;flex-shrink:0}

/* ── 페이징 ── */
.gdPaging{display:flex;gap:6px;justify-content:center;margin-top:24px}
.gdPaging a{display:grid;place-items:center;min-width:40px;height:40px;border:1px solid var(--border);border-radius:10px;color:var(--text);text-decoration:none;font-size:14px}
.gdPaging a:hover{border-color:var(--accent);color:var(--accent)}
.gdPaging a.is-active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:800}

/* ── 대학 허브 ── */
.gdYearHead{font-size:20px;font-weight:900;color:var(--text);margin:28px 0 10px;letter-spacing:-.3px}
.gdYearHead:first-child{margin-top:0}

/* ── 상세 ── */
.gdNewerBanner{display:block;padding:14px 18px;margin-bottom:20px;border-radius:12px;background:#fff7ed;border:1px solid #fdba74;color:#9a3412;font-size:14px;text-decoration:none}
.gdNewerBanner:hover{background:#ffedd5}
.gdDetail__head{margin-bottom:24px}
.gdDetail__cats{margin-bottom:10px}
.gdDetail__title{font-size:30px;font-weight:900;line-height:1.3;letter-spacing:-.5px;color:var(--text);margin:0 0 12px}
.gdDetail__meta{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--muted);align-items:center}
.gdDetail__source{color:var(--accent);font-weight:700;text-decoration:none;min-height:24px;display:inline-flex;align-items:center}
.gdDetail__source:hover{text-decoration:underline}

.gdSummary{border:1px solid rgba(0,51,132,.18);background:rgba(0,51,132,.03);border-radius:14px;padding:20px 24px;margin-bottom:28px}
.gdSummary__title{font-size:17px;font-weight:900;color:var(--accent);margin:0 0 10px}

.gdProse{font-size:16px;line-height:1.75;color:var(--text)}
.gdProse h2{font-size:22px;font-weight:900;letter-spacing:-.3px;margin:36px 0 12px;padding-top:8px}
.gdProse h3{font-size:18px;font-weight:800;margin:26px 0 10px}
.gdProse h2:first-child,.gdProse h3:first-child{margin-top:0}
.gdProse p{margin:0 0 14px}
.gdProse ul,.gdProse ol{margin:0 0 14px;padding-left:22px}
.gdProse li{margin-bottom:6px}
.gdProse img{max-width:100%;height:auto;border-radius:10px}
.gdProse table{width:100%;border-collapse:collapse;margin:14px 0;font-size:14px}
.gdProse table th,.gdProse table td{border:1px solid var(--border);padding:9px 12px;text-align:left}
.gdProse table th{background:rgba(15,23,42,.03);font-weight:800}
.gdDetail__content{margin-bottom:32px}

.gdFiles{margin-bottom:32px}
.gdFiles__title{font-size:20px;font-weight:900;margin:0 0 14px}
.gdFiles__figure{margin:0 0 14px;border:1px solid var(--border);border-radius:12px;overflow:hidden}
.gdFiles__figure img{display:block;width:100%;height:auto}
.gdFiles__pdf{display:inline-flex;align-items:center;min-height:46px;padding:0 18px;border:1px solid var(--border);border-radius:12px;color:var(--text);font-weight:700;font-size:14px;text-decoration:none;margin:4px 8px 4px 0}
.gdFiles__pdf:hover{border-color:var(--accent);color:var(--accent)}

/* ── 학점은행제 차별화 블록 ── */
.gdHakbank{border-radius:16px;padding:28px;margin:8px 0 32px;background:linear-gradient(135deg,#0b1631,#003384);color:#e2e8f0}
.gdHakbank__title{font-size:21px;font-weight:900;color:#fff;margin:0 0 10px;letter-spacing:-.3px}
.gdHakbank__lead{font-size:15px;line-height:1.7;margin:0 0 14px;color:#cbd5e1}
.gdHakbank__lead strong{color:#fff}
.gdHakbank__points{list-style:none;margin:0 0 20px;padding:0;display:grid;gap:8px}
.gdHakbank__points li{position:relative;padding-left:22px;font-size:14px;line-height:1.6;color:#cbd5e1}
.gdHakbank__points li::before{content:'✓';position:absolute;left:0;color:#7cb0ff;font-weight:900}
.gdHakbank__points strong{color:#fff}
.gdHakbank__btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 26px;border-radius:12px;background:#fff;color:#003384;font-weight:900;font-size:15px;text-decoration:none}
.gdHakbank__btn:hover{background:#e8eefb}

/* ── 관련 학과/대학 ── */
.gdRelCur{margin-bottom:32px}
.gdRelCur__title,.gdRelUniv__title{font-size:20px;font-weight:900;margin:0 0 14px}
.gdRelCur__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.gdRelCur__card{display:flex;flex-direction:column;gap:6px;padding:16px 18px;border:1px solid var(--border);border-radius:14px;text-decoration:none;background:var(--card);min-height:44px}
.gdRelCur__card:hover{border-color:var(--accent);box-shadow:0 6px 18px rgba(2,6,23,.06)}
.gdRelCur__card strong{color:var(--text);font-size:15px}
.gdRelCur__card span{color:var(--muted);font-size:13px;line-height:1.5}
.gdRelUniv{margin-bottom:32px}
.gdRelUniv__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.gdRelUniv__list a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border:1px solid var(--border);border-radius:999px;color:var(--text);font-size:14px;font-weight:600;text-decoration:none}
.gdRelUniv__list a:hover{border-color:var(--accent);color:var(--accent)}

/* ── 이전/다음 ── */
.gdPrevNext{display:grid;gap:10px;margin-bottom:8px}
.gdPrevNext__item{display:flex;flex-direction:column;gap:3px;padding:14px 18px;border:1px solid var(--border);border-radius:12px;text-decoration:none;min-height:44px}
.gdPrevNext__item span{font-size:12px;color:var(--muted)}
.gdPrevNext__item strong{color:var(--text);font-size:14px;line-height:1.4}
.gdPrevNext__item:hover strong{color:var(--accent)}
.gdPrevNext__list{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border-radius:12px;background:rgba(0,51,132,.06);color:var(--accent);font-weight:800;font-size:14px;text-decoration:none}
.gdPrevNext__list:hover{background:rgba(0,51,132,.1)}

/* ── 모바일: 사이드바 → 상단 아코디언 ── */
@media (max-width: 900px){
    .gdLayout{grid-template-columns:1fr;gap:20px}
    .gdSide{position:static}
    .gdSide__toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;padding:0 16px;border:1px solid var(--border);border-radius:12px;background:var(--card);font-size:15px;font-weight:800;color:var(--text);cursor:pointer}
    .gdSide__toggle[aria-expanded="true"] .gdSide__toggleIcon{transform:rotate(180deg)}
    .gdSide__toggleIcon{transition:transform .2s ease}
    .gdSide__nav{display:none;margin-top:8px}
    .gdSide__nav.is-open{display:flex}
    .gdDetail__title{font-size:24px}
    .gdTable__cat{width:auto}
    .gdTable__views{display:none}
    .gdTable th:last-child{display:none}
    .gdHakbank{padding:22px 18px}
}
