@charset "utf-8";
@import url('https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/static/pretendard.css');

/* [1. 전체 레이아웃 및 상단 메뉴 겹침 방지] */
#bo_list, #bo_v, #bo_w {
    /* 1. 메뉴가 가리지 않도록 상단 여백 확보 (부족하면 160px로 늘리세요) */
    margin: 140px auto 50px !important; 
    padding: 30px !important;
    max-width: 1000px;
    box-sizing: border-box;
    font-family: 'Pretendard', -apple-system, sans-serif;
    
    /* 2. 배경 비침 방지: 완전 불투명 화이트 */
    background: #ffffff !important;
    border: 1px solid #e5e7eb;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    
    /* 3. 핵심: z-index를 제거하거나 가장 낮게 설정하여 메뉴가 위로 오게 함 */
    position: relative !important;
    z-index: 0 !important; /* 1보다 낮은 0으로 수정 */
}

/* [2. 카테고리 메뉴 영역] */
#bo_cate {
    background: #f8fafc !important;
    padding: 15px !important;
    border-radius: 12px;
    margin-bottom: 30px !important;
    border: 1px solid #f1f5f9;
    /* 카테고리 내에서도 레이어 꼬임 방지 */
    position: relative;
    z-index: 0;
}

#bo_cate ul {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 0;
}

#bo_cate li a {
    display: block;
    padding: 7px 15px;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 30px;
    color: #64748b;
    text-decoration: none;
    font-size: 14px;
    transition: 0.2s;
}

#bo_cate_on {
    background: #1e293b !important;
    color: #fff !important;
    border-color: #1e293b !important;
    font-weight: 600;
}

/* [3. 리스트 테이블 디자인] */
.tbl_head01 { width: 100%; border-collapse: collapse; background: #fff; }
.tbl_head01 thead th { 
    background: #fcfcfd; 
    padding: 15px; 
    border-bottom: 2px solid #f1f5f9;
    color: #475569;
    font-size: 14px;
}
.tbl_head01 tbody td {
    padding: 18px 15px;
    border-bottom: 1px solid #f1f5f9;
}

.td_subject a {
    font-size: 16px;
    font-weight: 600;
    color: #1e293b;
    text-decoration: none;
}

/* [4. 글읽기(View) 제목 및 정보 영역] */
#bo_v_title { border: none; margin-bottom: 20px; }
#bo_v_title .bo_v_tit { font-size: 26px; font-weight: 800; color: #0f172a; }

#bo_v_info {
    background: #f8fafc;
    padding: 12px 20px;
    border-radius: 10px;
    margin-bottom: 30px;
    display: flex;
    justify-content: space-between;
    font-size: 13px;
    color: #94a3b8;
}

/* [5. 하단 버튼] */
.btn_confirm {
    display: flex;
    gap: 10px;
    margin-top: 40px;
    padding-top: 25px;
    border-top: 1px solid #f1f5f9;
}

.btn_submit {
    flex: 2;
    background: #1e293b !important;
    color: #fff !important;
    height: 50px;
    border-radius: 12px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    border: none;
}

.btn_cancel, .btn_admin {
    flex: 1;
    background: #fff !important;
    color: #475569 !important;
    height: 50px;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 14px;
}

/* [6. 모바일 최적화] */
@media (max-width: 768px) {
    #bo_list, #bo_v, #bo_w {
        margin-top: 100px !important; 
        padding: 20px !important;
        margin-left: 10px !important;
        margin-right: 10px !important;
        border: 1px solid #eee; /* 모바일은 테두리만 살림 */
        box-shadow: none;
    }
    
    .btn_confirm { flex-direction: row; }
    #bo_v_title .bo_v_tit { font-size: 20px; }
}

/* 그누보드 기본 요소 제거 */
.btn_bo_user, .btn_bo_adm, .sound_only, .bo_v_nb { display: none !important; }