/* =======================================================
   공지사항 전용 스타일 (목록 & 상세)
======================================================= */
body {
    display: flex; flex-direction: column; min-height: 100vh;
    background-color: var(--c-bg); overflow-y: scroll;
}

/* 본문 영역 */
.notice-wrap {
    flex: 1; width: 100%; max-width: var(--max-width);
    margin: 0 auto; padding: 180px 60px 140px;
}
.notice-content { max-width: 800px; }

.notice-main-title {
    font-size: 2.8rem; font-weight: 800; color: #191f28;
    letter-spacing: -0.04em; margin: 0 0 20px 0;
}

/* 목록 화면 */
.notice-list { list-style: none; padding: 0; margin: 0; border-top: 2px solid #191f28; }
.notice-item {
    display: flex; flex-direction: column; padding: 24px 16px; margin: 0 -16px;
    text-decoration: none; border-bottom: 1px solid #f2f4f6;
    transition: background-color 0.2s ease; cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
    .notice-item:hover { background-color: #f2f4f6; border-bottom-color: transparent; border-radius: 12px; }
}
.item-title {
    font-size: 1.15rem; font-weight: 600; color: #333d4b; margin: 0 0 8px 0;
    line-height: 1.5; word-break: keep-all; transition: color 0.2s ease;
}
.notice-item:hover .item-title { color: #191f28; }
.item-date { font-size: 0.95rem; color: var(--c-text-muted); }

.pagination { display: flex; justify-content: flex-start; align-items: center; gap: 4px; margin-top: 60px; }

/* 상세 화면 */
.detail-header { padding-bottom: 20px; margin-bottom: 40px; }
.detail-title {
    font-size: 1.75rem; font-weight: 700; color: #191f28;
    margin: 0 0 12px 0; letter-spacing: -0.02em; line-height: 1.4; word-break: keep-all;
}
.detail-date { font-size: 0.95rem; color: var(--c-text-muted); }

.detail-body { font-size: 1.05rem; line-height: 1.8; color: #333d4b; min-height: 300px; }
.detail-body h4 { font-size: 1.15rem; font-weight: 700; color: #191f28; margin: 40px 0 16px 0; letter-spacing: -0.01em; }
.detail-body h4:first-child { margin-top: 0; }
.detail-body p { margin-bottom: 24px; word-break: keep-all; }
.detail-body p:last-child { margin-bottom: 0; }

.detail-footer { margin-top: 80px; display: flex; justify-content: flex-start; }
.btn-list {
    display: inline-flex; align-items: center; justify-content: center;
    padding: 12px 18px; border-radius: 6px;
    background-color: #f2f4f6; color: #4e5968; font-size: 0.95rem; font-weight: 600;
    border: none; cursor: pointer; transition: background-color 0.2s ease, color 0.2s ease;
}
.btn-list:hover { background-color: #e9ecef; color: #191f28; }

/* 모바일 반응형 */
@media (max-width: 768px) {
    .notice-wrap { padding: 140px 30px 80px; }
    .notice-main-title { font-size: 2.2rem; margin-bottom: 30px; }
    .notice-item { padding: 20px 12px; margin: 0 -12px; }
    .item-title { font-size: 1.05rem; }
    .detail-title { font-size: 1.4rem; }
    .detail-body { font-size: 1rem; }
    .detail-body h4 { font-size: 1.1rem; margin: 32px 0 12px 0; }
    .detail-footer { margin-top: 60px; }
}

/* 상단 네비게이션 현재 탭 주황색 표시 */
.nav-link.is-current {
    color: var(--c-accent) !important;
}
.nav-link.is-current:hover {
    color: var(--c-accent) !important;
    opacity: 0.7;
}