@charset "utf-8";


/* List */
.list-media { margin:0; }
.list-item { padding-bottom:15px; border-top:1px dotted #ccc; margin-bottom:15px; }
.list-item .img-left { margin-right:15px; }
.list-item .img-right { margin-left:15px; }
.list-item h2.media-heading { display:block; font-size:16px; line-height:22px; margin:0px; padding:0px 0px 4px; }
.list-item .list-details { padding:9px 0px; border-bottom:1px dotted #ccc; }
.list-item .list-details>b { width:100px; display:inline-block; }
.list-item .list-details .member, .list-item .list-details .guest { color:#787878 !important; }
.list-item .list-cont { margin-top:8px; padding:0; line-height:20px; }
.list-item .list-sp { margin:0 7px; color:#ddd; font-size:11px; }

.view_con {width:100%; position:relative; overflow:hidden;}
.view_con>div {float:left; overflow:hidden;}
.view_con>div:nth-child(1) {width:40%;}
.view_con>div:nth-child(2) {width:60%; padding-left:50px;}
.view_con>div img {max-width:100%;}
@media only screen and (max-width:496px){
	.view_con>div {float:none; width:100% !important; padding:0 !important; margin-bottom:20px;}
}

/* View */
.view-wrap .img-photo i { background: rgb(245, 245, 245); padding: 16px; border-radius: 50%; width: 80px; height: 80px; text-align: center; color: rgb(143, 143, 143); font-size: 40px; display: inline-block; }
.view-wrap .img-photo img { border-radius: 50%; width: 80px !important; height: 80px !important; display:inline-block; }
.view-wrap .img-resize img { max-width:100%; height:auto; }
.view-wrap .no-attach { border-bottom:0px; }
.view-wrap .view-cnt { letter-spacing:0; }

.view-wrap h1 { font-size: 22px; font-weight:bold; margin:0px; line-height:50px; display:block; text-overflow:ellipsis; white-space:nowrap; word-wrap:normal; overflow:hidden; margin:0px; padding:0px 10px; color: rgb(59, 62, 67); letter-spacing:-1px; }
.view-wrap h1 span.talker-photo { margin-bottom:10px; margin-right:10px; }
.view-head { border-left:0px; border-right:0px; }
.view-head .sp { display:inline-block; width:20px; text-align:center; font-size:11px; color:#888; }
.view-head .list-group-item { padding:5px 15px; border-style:dotted; }
.view-tag { margin:10px 0px; padding:0px; color:#888; }
.view-tag a { color:#888; }
.view-tag a:hover { color:crimson; }
.view-cnt { margin-top:4px; }
.view-img img { display:block; max-width:100%; margin:0 auto 15px; border:0; height:auto; }
.view-content { padding-bottom:20px; line-height:180%; }
.view-content img { width:auto; height:auto; max-width:100%; }
.view-content p { padding:0; margin:0; line-height:180%; }
.view-good-box { text-align:center; }
.view-good-box span { margin:15px 6px; width:80px; height:80px; display:inline-block; }
.view-good-box a { background: rgb(245, 245, 245); padding-top:14px; border-radius: 50%; width: 80px; height: 80px; text-align: center; color: rgb(51, 51, 51); font-size: 22px; line-height:26px; display: inline-block; }
.view-good-box .view-good a:hover { background: rgb(223, 17, 25); color: rgb(255, 255, 255); }
.view-good-box .view-nogood a:hover { background: rgb(0, 0, 0); color: rgb(255, 255, 255); }
.view-author .auth-photo { width:160px; padding-right:15px; }
.view-icon { margin-bottom:10px; }
.view-icon img { width:34px; border-radius:50%; margin-bottom:5px; }
.view-comment { margin: 0px; padding: 0px 0px 5px; text-transform: capitalize; overflow: hidden; border-bottom: 1px solid rgb(51, 51, 51); display: inline-block; position: relative; }

/* Padding */
.view-padding { padding-left:15px; padding-right:15px; }
.is-mobile .view-padding { padding-left:0px; padding-right:0px; }
.view-author-none { height:1px; border-top:1px solid #eee; margin:12px 0px 20px; }

/* Comment */
.comment-media { margin:10px 0px; }
.comment-media .photo i { background: rgb(245, 245, 245); padding: 15px; border-radius: 50%; width: 64px; height: 64px; text-align: center; color: rgb(143, 143, 143); font-size: 30px; display: inline-block; }
.comment-media .photo img { border-radius: 50%; width: 64px !important; height: 64px !important; display:inline-block; }
.view-mobile .comment-media .photo i { padding: 10px; width: 54px; height: 54px; }
.view-mobile .comment-media .photo img { width: 54px !important; height: 54px !important; }

.comment-media .media { border-top:1px solid #eee; margin:7px 0px; padding:7px 0px 0px; }
.comment-media :first-child.media { border-top:0px; margin-top:0px; padding-top:0px; }
.comment-media h5 { margin:2px 0px; line-height: 22px; }
.comment-media .media .media-body { padding-left:0px; }
.comment-media .media .media-info { margin-left:10px; }
.comment-media .media .media-content { margin-top:8px; }
.comment-media .media .media-btn {	margin-left:4px; }
.comment-media .cmt-good-btn { text-align:right; padding-right:1px; }
.comment-media .cmt-good, .comment-media .cmt-nogood { display:inline-block; width:74px; height:20px; margin-top:10px; padding-right:10px; margin-right:-1px; font:bold 11px verdana; text-align:right; letter-spacing:-1px; line-height:19px; cursor:pointer; }
.comment-media .cmt-good { background: url('../../img/cmt_good.gif') no-repeat left center; color:#f4695b; }
.comment-media .cmt-nogood { background: url('../../img/cmt_nogood.gif') no-repeat left center; color:#888; }

.comment-form { padding-top:10px; }
.comment-box { border:1px solid #ddd; padding:12px 12px 0px; margin-bottom:15px; background:#fbfbfb; }
.comment-content { display:table; width:100%; table-layout:fixed; }
.comment-content .comment-cell { display:table-cell; padding:0px; text-align:center; vertical-align:middle; }
.comment-content .comment-cell.comment-submit { width:80px; height:100%; background:#fafafa; border:1px solid #ccc; border-left:0px; cursor:pointer; }
.comment-content .comment-cell.comment-submitt { width:80px; height:100%; background:#fafafa; border:1px solid #ccc; border-left:1px; cursor:pointer; }
.comment-btn .cursor { margin-left:12px; color:#787878; }

#wr_content { resize:none; }
#bo_vc_opt ol {	margin:0;padding:0;list-style:none;zoom:1; }
#bo_vc_opt ol:after { display:block;visibility:hidden;clear:both;content:""; }
#bo_vc_opt ol li { float:left;margin:0; }
#bo_vc_send_sns ul { margin:0;padding:0;list-style:none;zoom:1; }
#bo_vc_send_sns ul:after { display:block;visibility:hidden;clear:both;content:""; }
#bo_vc_send_sns ul li {	float:left;margin:0 20px 0 0; }
#bo_vc_send_sns input {	margin:0 0 0 5px; }

@media all and (max-width:768px) {
	.responsive .view-wrap h1 { text-overflow:clip; overflow:none; white-space:normal; line-height: 28px; font-size: 20px; margin-bottom:10px; }
	.responsive .view-wrap h1 .photo { display:none; }
}

@media all and (max-width:480px) {
	.responsive .view-author .auth-photo { float:none; width:100%; padding-right:0px; }
	.responsive .view-icon .pull-right { float:none !important; }
}

/* ========================================
   교육 프로그램 신청/대기 현황 스타일
   ======================================== */

/* 신청하기 버튼 영역 */
.edu-action-box {
    width: 100%;
    margin-bottom: 30px;
    text-align: center;
    padding: 20px 0;
}
.btn-edu-apply {
    display: inline-block;
    background: #01b552 !important;
    border: none !important;
    color: #fff !important;
    width: 200px;
    margin: 5px;
    padding: 20px 25px;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    border-radius: 8px;
    text-decoration: none !important;
    transition: background 0.2s;
}
.btn-edu-apply:hover {
    background: #018a3e !important;
    color: #fff !important;
    text-decoration: none !important;
}
.edu-state-msg {
    padding: 20px;
}
.edu-state-msg .state-txt {
    display: block;
    color: #01b552;
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 8px;
}
.edu-state-msg .state-desc {
    display: block;
    color: #666;
    font-size: 14px;
}
.edu-offline-msg {
    padding: 20px;
    font-weight: bold;
    color: #666;
}

/* 신청/대기 현황 카드 레이아웃 */
.edu-status-wrapper {
    display: flex;
    gap: 20px;
    width: 100%;
    margin-bottom: 30px;
}
.edu-status-card {
    flex: 1;
    min-width: 0;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    overflow: hidden;
}
.edu-status-header {
    background: #f8f9fa;
    border-bottom: 1px solid #e0e0e0;
    padding: 15px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    color: #333;
}

/* 엑셀 다운로드 링크 */
.edu-excel-links {
    display: flex;
    justify-content: end;
    gap: 15px;
    padding: 12px;
    border-bottom: 1px solid #eee;
}
.btn-excel {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 12px;
    background: #217346 !important;
    color: #fff !important;
    border-radius: 4px;
    font-size: 13px;
    text-decoration: none !important;
    transition: background 0.2s;
}
.btn-excel:hover {
    background: #1a5c38 !important;
    color: #fff !important;
    text-decoration: none !important;
}

/* 상태 요약 */
.edu-status-summary {
    padding: 12px 15px;
    background: #fff;
    border-bottom: 1px solid #eee;
    font-size: 14px;
}
.summary-item { color: #555; }
.summary-divider { margin: 0 10px; color: #ccc; }
.count-highlight { color: #e53935; font-size: 16px; }

/* 관리자 컨트롤 */
.edu-admin-control {
    display: flex;
    gap: 10px;
    padding: 12px 15px;
    background: #fafafa;
    border-bottom: 1px solid #eee;
    flex-wrap: wrap;
    align-items: center;
}
.edu-select {
    flex: 1;
    min-width: 150px;
    padding: 8px 12px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 13px;
}
.btn-change {
    padding: 8px 20px;
    background: #01b552 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 4px;
    font-size: 13px;
    cursor: pointer;
    transition: background 0.2s;
}
.btn-change:hover { 
    background: #018a3e !important; 
    color: #fff !important;
}

/* 테이블 래퍼 */
.edu-table-wrap {
    padding: 15px;
    overflow-x: auto;
}
.edu-table-wrap .sm_table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}
.edu-table-wrap .sm_table th,
.edu-table-wrap .sm_table td {
    padding: 10px 8px;
    border-bottom: 1px solid #eee;
    text-align: center;
}
.edu-table-wrap .sm_table th {
    background: #f5f5f5;
    font-weight: 600;
    color: #555;
}
.edu-table-wrap .sm_table tbody tr:hover {
    background: #f9f9f9;
}
.loading-text {
    text-align: center;
    color: #999;
    padding: 30px;
}

/* 반응형 */
@media (max-width: 768px) {
    .edu-status-wrapper {
        flex-direction: column;
    }
    .edu-admin-control {
        flex-direction: column;
    }
    .edu-select { width: 100%; }
    .btn-change { width: 100%; }
    .edu-excel-links {
        flex-direction: column;
        align-items: stretch;
    }
    .btn-excel {
        justify-content: center;
    }
    .btn-edu-apply {
        width: 100%;
        max-width: 280px;
    }
}