html, body {
    height: 100%;
}

body { font-family: 'Nanum Gothic', monospace; font-weight: 400;}

/* 시작 : 로고 */
.custom-logo {
    margin-left: 0;
}
@media (min-width: 768px) {
    .custom-logo {
        margin-left: 100px; /* 원하는 만큼 조절 */
    }
}
.bg_foter {
	background: #ffc800;
}
/* 끝 : 로고 */


A:link    { text-decoration:none; color:#767676;}
A:visited { text-decoration:none; color:#767676;}
A:active  { text-decoration:none; color:#84B66B;}
A:hover   { text-decoration:none; color:#84B66B;}





/* 시작 : 페이징 커스텀 스타일 */
.pagination-custom .page-item {
	margin: 0 8px; /* 숫자 사이의 간격을 넓힘 */
}
.pagination-custom .page-link {
	border-radius: 5px !important; /* 모서리를 약간 둥글게 */
	border: none;
	background-color: #e9ecef; /* 나머지 페이지: 회색 배경 */
	color: #495057; /* 글자색 */
	padding: 8px 16px;
	transition: all 0.2s ease;
}
/* 현재 페이지 스타일 */
.pagination-custom .page-item.active .page-link {
	background-color: #212529 !important; /* 현재 페이지: 검은색 배경 */
	color: #ffffff !important; /* 글자색: 흰색 */
	font-weight: bold;
}
/* 마우스 호버 시 효과 */
.pagination-custom .page-link:hover {
	background-color: #adb5bd; /* 호버 시 조금 더 진한 회색 */
	color: #212529;
}
/* 이전/다음 버튼 스타일 */
/* 1. 기본 숫자 버튼 (회색 바탕) */
.pagination-custom .page-item .page-link {
    background-color: #e9ecef; /* 연한 회색 */
    color: #495057;           /* 진한 회색 글자 */
    border: 1px solid #dee2e6;
    margin: 0 2px;             /* 버튼 사이 간격 */
    border-radius: 4px;        /* 약간 둥글게 */
}
/* 3. 화살표 버튼 (투명 바탕) */
.pagination-custom .page-item-arrow .page-link {
    background-color: transparent !important;
    color: #212529 !important;
    font-weight: bold;
    border: none; /* 화살표는 테두리 없이 깔끔하게 */
}
/* 마우스 올렸을 때(Hover) 효과 */
.pagination-custom .page-item .page-link:hover {
    background-color: #ced4da;
    color: #212529;
}
/* 아주 작은 스마트폰 (768px 이하) 대응 */
@media (max-width: 768px) {
    .pagination-custom .page-item {
        margin: 0 8px;
    }
    .pagination-custom .page-link {
        padding: 5px 8px; /* 더 좁은 화면을 위해 한 번 더 축소 */
        font-size: 16px;
    }
}
/* 끝 : 페이징 커스텀 스타일 */



/* 시작 : 도서목록 */
/* 심플 스타일 커스텀 */
.book-item {
	margin-bottom: 4rem; /* 행간 간격 */
}
.book-link {
    text-decoration: none;
    display: block;
    perspective: 1000px; /* 3D 효과를 위한 설정 */
}
/* 3. 마우스를 올렸을 때 (Hover) 효과 */
.book-link:hover .book-cover {
    /* 이미지를 살짝 키우기 (1.03배) */
    transform: scale(1.03);
    
    /* 우측 하단에 선명한 그림자 추가 (x축 10px, y축 10px, 흐림 20px, 색상) */
    box-shadow: 12px 12px 25px rgba(0, 0, 0, 0.15);
}
/* 도서 이미지: 이미지 자체의 비율과 여백 강조 */
.book-cover {
    width: 100%;
    aspect-ratio: 1 / 1.4;
    object-fit: cover;
    background-color: #f5f5f5;
    margin-bottom: 1.5rem;
    
    /* 변화를 부드럽게 만들기 (시간, 효과) */
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid #eee; /* 아주 연한 테두리로 경계 구분 */
}
/* 텍스트 정보 정렬 */
.book-title {
	font-size: 1rem;
	color: #1a1a1a;
	font-weight: 500;
	margin-bottom: 0.4rem;
	line-height: 1.4;
	display: block;
}
.book-author {
	font-size: 0.85rem;
	color: #767676;
	display: block;
}

/* 카테고리 전체 스타일 */
.book-category-nav .nav-link {
	color: #888;          /* 기본은 연한 회색 */
	font-size: 1.1rem;
	font-weight: 500;
	padding: 10px 25px;   /* 좌우 간격 넉넉히 */
	transition: all 0.3s;
	position: relative;
}
/* 마우스 호버 시 */
.book-category-nav .nav-link:hover {
	color: #333;
}
/* 활성화(Active) 상태: 진한 색상 및 하단 강조 라인 */
.book-category-nav .nav-link.active {
	color: #000 !important; /* 진한 검은색 */
	font-weight: 700;       /* 굵게 */
}
/* 활성화된 메뉴 밑에 짧은 선 추가 (디자인 포인트) */
.book-category-nav .nav-link.active::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 25%;
	width: 50%;
	height: 3px;
	background-color: #000;
	border-radius: 2px;
}
/* 카테고리 하단 얇은 구분선 */
.category-divider {
	margin-top: 5px;
	border: 0;
	border-top: 1px solid #eee;
	opacity: 1;
}
/* 모바일 대응: 메뉴가 많을 경우 좌우 스크롤 허용 */
@media (max-width: 768px) {
	.book-category-nav {
		flex-wrap: nowrap;
		overflow-x: auto;
		justify-content: flex-start !important; /* 모바일은 왼쪽부터 정렬 */
		-webkit-overflow-scrolling: touch;
	}
	.book-category-nav .nav-link {
		white-space: nowrap; /* 글자 줄바꿈 방지 */
		padding: 10px 15px;
	}
}
/* 끝 : 도서목록 */



/* 시작 : 도서 */
/* 책 이미지 스타일 (호버 효과 포함) */
.detail-book-cover {
	width: 100%;
	max-width: 400px; /* 적절한 이미지 크기 제한 */
	box-shadow: 15px 15px 30px rgba(0,0,0,0.1);
	transition: transform 0.3s ease;
	border-radius: 4px;
}
.detail-book-cover:hover {
	transform: scale(1.02);
}
/* 정보 텍스트 스타일 */
.book-detail-title {
	font-size: 2.0rem;
	font-weight: 700;
	color: #1a1a1a;
	margin-bottom: 0.5rem;
	line-height: 1.2;
}
.book-detail-meta {
	font-size: 0.9rem;
	margin-bottom: 2rem;
}
/* 레이블(저자, 출간일 등) 스타일 */
.meta-label {
	font-size: 0.9rem;
	color: #333;
	display: inline-block;
	font-weight: 400;
}
.meta-value {
	font-size: 0.9rem;
	color: #333;
	font-weight: 400;
}
/* 섹션 공통 타이틀 스타일 */
.book-detail-section-title {
    font-size: 1.5rem;      /* 책 제목(2rem)보다 작게 설정 */
    font-weight: 600;      /* 700보다는 부드럽고 500보다는 강조된 굵기 */
    color: #333;           /* 제목(#1a1a1a)보다 아주 살짝 부드러운 색상 */
    letter-spacing: -0.02em; /* 한글 가독성을 위해 자간을 살짝 좁힘 */
	margin-top: 3rem;
	margin-bottom: 2rem;
	border-bottom: 1px solid #e6e6e6;
}
/* 책 소개 구분선 */
.detail-divider {
	margin: 3rem 0;
	border-top: 1px solid #eee;
}
/* 끝 : 도서 */





/* 시작 : 공지 */

/* 1. 전체 아이템: 기본 테두리 제거 후 상단에만 선 추가 */
.accordion-item {
    border: none !important;
    border-top: 1px solid #dee2e6 !important; /* 상단 라인 */
    background-color: transparent;
}/* 2. 마지막 아이템: 하단 라인 추가 (목록의 끝을 알림) */
.accordion-item:last-child {
    border-bottom: 1px solid #dee2e6 !important;
}
.accordion-button {
    font-family: inherit !important; /* 부모 요소인 body 등의 폰트를 그대로 상속 */
    font-weight: inherit;           /* 굵기도 상속받고 싶을 때 */
}
/* 아코디언 버튼 클릭 시 생기는 파란색 테두리 및 그림자 제거 */
.accordion-button:focus {
    box-shadow: none;
    border-color: rgba(0,0,0,.125);
}
/* 펼쳐졌을 때의 배경색과 글자색 설정 */
.accordion-button:not(.collapsed) {
    background-color: #f8f9fa;
    color: #212529;
}
/* 제목 부분에 마우스를 올렸을 때의 효과 */
.accordion-button:hover {
    background-color: #f1f3f5;
}
/* 본문 내용 스타일 */
.accordion-body {
    line-height: 1.6;
    color: #495057;
    white-space: pre-wrap; /* 줄바꿈 및 공백 유지 */
}
/* 아코디언 우측 화살표(아이콘) 스타일 수정 */
/* 기본적으로는 마진이 없거나 부트스트랩 기본값을 따름 */
.accordion-button::after {
    margin-right: 0; 
}
/* 너비가 768px 이상인 기기(데스크탑 등)에서만 적용 */
@media (min-width: 768px) {
    .accordion-button::after {
        margin-right: 32px; 
    }
}
/* 끝 : 공지 */