.content-friend {width:100%;}
.friend-desc {margin-top:20px;font-size:16px;color:#333;}

.month-block {
    margin-top:50px;
    border: 1px solid var(--color-primary);
    border-radius:6px;
    background: #fff;
}

/*
.month-block.literacy {border-color:#eaad00;}
.month-block.korean {border-color:#0a3d91;}
.month-block.math {border-color:#D35400;}
.month-block.feel_connect {border-color:#388E3C;}
*/

.month-title {
    text-align: center;
    margin-bottom: 1rem;
    font-weight: normal;
}

.bookSwiper  {padding-top:20px !important;padding-bottom:50px !important;}
.swiper-slide {
    text-align: center;
}

.swiper-slide img {
    width: 100%;
    max-width: 180px;
    margin: 0 auto;
    border-radius: 10px;
    transition: transform 0.3s ease;
}

.swiper-slide img:hover {
    transform: scale(1.05);
}

.swiper-button-next,
.swiper-button-prev {
    color: #c8b58f;
}
.swiper-pagination-bullet {
    background: #fff;
    border:solid 1px #ddd;
    opacity: 0.7;
}
.swiper-pagination-bullet-active {
    opacity: 1;
}

.book-group {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 5px;
    justify-items: center;
}

.book-group img {
    width: 100%;
    border-radius: 10px;
    transition: transform 0.3s ease;
    cursor:pointer;
}

.book-group img:hover {
    transform: scale(1.05);
}

.month-header {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    max-width:221px;
    margin:0 auto;
    margin-top:-14px;
    margin-bottom: 1rem;
    background:#fff;
}

.month-header h4 {
    font-size:23px;
    font-weight: 700;
    margin: 0 2.5rem;
    text-align: center;
}



.swiper-button-prev,.swiper-button-next  {
    width:40px !important;height:40px !important;display:flex;align-items:center;justify-content: center;
}

.month-prev,.month-next {
    border-radius:50px;
    background:#fff;border:solid 1px #eee;box-shadow:0 0px 15px rgba(0, 0, 0, 0.1);
}
.month-prev:after,.month-next:after {color:#333;font-size:14px;font-weight:bold;}




.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {bottom:10px !important;}
.swiper-pagination-bullet-active {background:#ddd !important;}

.level-tabs {
    display: grid;
    justify-content: flex-start;
    border-bottom: 1px solid var(--color-primary);
    margin-top: 30px;
    height: 46px;
    grid-template-columns:repeat(4,1fr);
}

/*
.level-tabs.literacy {border-color:#eaad00;}
.level-tabs.korean {border-color:#0a3d91;}
.level-tabs.math {border-color:#D35400;}
.level-tabs.feel_connect {border-color:#388E3C;}
*/
.level-tabs .tab-btn {
    background: #fff;
    border: 1px solid #ddd;
    border-bottom: none;
    padding: 0.7rem 1.2rem;
    cursor: pointer;
    font-size: 13px;
    border-radius: 0;
    height: 46px;
    margin-right: -1px;
    position: relative;
    top: 1px;
    border-bottom: 2px solid var(--color-point);

    color:#555;
}

/*
.level-tabs.literacy .tab-btn {border-color:#eaad00;}
.level-tab.koreans .tab-btn {border-color:#0a3d91;}
.level-tabs.math .tab-btn {border-color:#D35400;}
.level-tabs.feel_connect .tab-btn {border-color:#388E3C;}
*/

.level-tabs .tab-btn.active {
    border: 2px solid var(--color-point);
    border-bottom: 2px solid #fff;
    color: var(--color-point);
    z-index: 1;
    font-weight:bold;
}

/*
.level-tabs.literacy .tab-btn.active {border-color:#eaad00;border-bottom: 1px solid #fff;color:#eaad00;}
.level-tabs.koreans .tab-btn.active {border-color:#0a3d91;border-bottom: 1px solid #fff;color:#0a3d91;}
.level-tabs.math .tab-btn.active {border-color:#D35400;border-bottom: 1px solid #fff;color:#D35400;}
.level-tabs.feel_connect .tab-btn.active {border-color:#388E3C;border-bottom: 1px solid #fff;color:#388E3C;}
*/

.tab-content {
    display: none;
    margin-top: 1rem;
}

.tab-content.active {
    display: block;
}

.level-table {
    width: 100%;
    border-collapse: collapse;
}

.level-table th,
.level-table td {
    border: 1px solid #ddd;
    padding: 0.8rem;
    text-align: center;
}

.level-table td {height:65px;}
.level-table td.math  {text-align:left;padding-left:30px;}
.level-table td.math strong {font-weight:bold;margin-bottom:5px;display:flex;}
.level-table td.math div {height:22px;}
.level-table td.math div + strong {margin-top:20px;}


.level-table th {
    background: #f9f9f9;
}

.level-table tr td .btn-link {padding:6px 8px;background: #e1effa;border-radius:8px;display:inline-flex;align-items: center;justify-content: center;text-decoration: none;}
.level-table tr td .btn-link:hover {color:#fff;background:var(--color-point);}
.level-table tr td .btn-link i {margin-right:4px;color:var(--color-point);}
.level-table tr td .btn-link.full {grid-column: 1 / -1; }
.level-table tr td .btn-link:hover i {color:#fff;}
.level-table tr td .btn-free {background:none;position:relative;}
.level-table tr td .btn-free:hover {background:none;}
.level-table tr td .btn-free:hover i {background:none;color:var(--color-point);}

.level-table tr td .tooltip-fixed {
    background:var(--color-primary);
    color: #fff;
    padding: 4px 8px;
    border-radius: 6px;
    font-size: 12px;
    position: absolute;
    display:flex;
    top:20px;
    width:80px;
    align-items: center;
    justify-content: center;
    right:10px;
}

.level-table tr td .tooltip-fixed::after {
    content: "";
    position: absolute;
    left:50%;  /* 꼬리 위치 */
    top: -5px;
    transform: translateX(3%);
    border-width: 5px;
    border-style: solid;
    border-color: transparent #333 transparent transparent;
}


.workbook-preview {
    background: #e6f0fb;
    padding: 1.5rem;
    margin: 2rem 0;
    border-radius: 6px;
}

.workbook-preview.literacy {background:#FFF8E1;}
.workbook-preview.math {background:#FFE0B2;}
.workbook-preview.feel_connect {background: #ddf1dd;}

.workbook-preview h3 {
    text-align: center;
    font-size: 18px;
    margin-bottom: 1rem;
    color: #0a3d91;
    font-weight: bold;
}
.workbook-preview h3 strong {font-weight:bold;}

.workbook-preview.literacy h3 {color: #eaad00;}
.workbook-preview.math h3 {color:#D35400;}
.workbook-preview.feel_connect h3 {color:#388E3C;}

.workbook-preview h3 span {
    color: #333;
    font-weight:bold;
}

.workbook-swiper {
    position: relative;
    padding-top:10px;
    padding-bottom:20px;
}

.workbook-swiper .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff; /* 흰 배경 */
    border-radius: 12px; /* 모서리 둥글게 */
    box-shadow: 0 4px 10px rgba(0,0,0,0.1); /* 은은한 그림자 */
    box-sizing:border-box;
    padding: 10px;
    width: 220px;   /* 원하는 썸네일 폭 */
    height: auto;
}

.workbook-swiper .swiper-slide img {
    width: 100%;
    height: auto;
    object-fit: contain; /* 이미지 비율 유지 */
    border-radius: 8px;
}

.workbook-next {left:calc(100% - 42px) !important; border-radius:50px;
    background:rgba(255,255,255,0.9);border:solid 1px #eee;box-shadow:0 0px 15px rgba(0, 0, 0, 0.1);}
.workbook-prev {left:2px !important;border-radius:50px;background:rgba(255,255,255,0.9);border:solid 1px #eee;box-shadow:0 0px 15px rgba(0, 0, 0, 0.1);}
.workbook-prev:after,.workbook-next:after { font-size:18px;color:#333;font-weight: bold;}

.type_img img {width:100%;}

.top-btns {height:40px;display:flex;}
.top-btns .btn-year {margin-left:auto;}

.top-btns .btn-year {display:inline-block; width:156px; height:25px; border:1px solid #3E5FAC; color:#3E5FAC; line-height:2em; text-indent:30px; text-decoration:none; font-weight:bold; background:url('/images/icon/btn_greenbg.jpg?v=0003') no-repeat top right; border-radius: 8px;}

.list-btns {display:grid;grid-template-columns:auto auto;gap:10px;}