@charset "utf-8";
/**
 * Project Skin Stylesheet
 * 프로젝트 게시판 전용 스킨
 */

/* ========================================
   기본 스타일 (bbs_basic 상속)
======================================== */
.mb-board {word-break:break-all;}
.mb-board div form {font-size:13px; line-height:1.6;margin:0px !important;}
.mb-board div table {width:100%;table-layout:fixed; word-break:break-all;font-size:13px; line-height:1.6;border-collapse: collapse;border:none;background:none;margin:0; padding:0;}
.mb-board div .table>thead>tr>th,
.mb-board div .table>tbody>tr>th {font-weight:bold;vertical-align:middle !important;text-align:left;border:0 none;border-bottom:1px solid #dbdbdb !important;margin: 0 !important; padding: 0;overflow:hidden;}
.mb-board div .table>tbody>tr>td {border:0 none !important;border-bottom:1px solid #dbdbdb !important;margin: 0 !important; padding: 0;overflow:hidden;}
.mb-board div .table>tbody, .mb-board tfoot, .mb-board thead{margin:0;padding:0;}

.mb-board input[type="checkbox"]{ margin:-3px 3px 0 0 !important;min-width:14px;min-height:14px;vertical-align:middle !important;-webkit-border-radius:3px;-moz-border-radius:3px;-khtml-border-radius:3px;border-radius:3px;}
.mb-board input[type="radio"]{ margin:-3px 3px 0 0 !important;min-width:14px;min-height:14px;vertical-align:middle !important;}

.mb-board input[type="text"],.mb-board input[type="password"],.mb-board input[type="datetime"],.mb-board input[type="datetime-local"],.mb-board input[type="date"],.mb-board input[type="month"],.mb-board input[type="color"],
.mb-board input[type="time"],.mb-board input[type="week"],.mb-board input[type="number"],.mb-board input[type="email"],.mb-board input[type="url"],.mb-board input[type="search"],.mb-board input[type="tel"]{display:inline-block;padding: 5px 7px;margin:0;*padding:3px 0px !important;font-size:13px;line-height:18px;vertical-align: middle;height:30px !important;*height:22px !important;border: 1px solid #ccc;-webkit-border-radius:3px;-moz-border-radius:3px;-khtml-border-radius:3px;border-radius:3px;background-color:#FFF;color:#6A6A6A !important;}
.mb-board select{width:auto !important;min-width:64px;padding:1px 5px 1px !important;*padding:3px 0px !important;display:inline-block;font-size:13px;line-height:18px;vertical-align: middle;height:30px !important;*height:30px !important;border: 1px solid #ccc;-webkit-border-radius:3px;-moz-border-radius:3px;-khtml-border-radius:3px;border-radius:3px;background-color:#FFF;background-image:none !important;appearance:menulist;-moz-appearance:menulist;-webkit-appearance:menulist;color:#6A6A6A !important;}
.mb-board textarea{padding: 5px 7px;*padding:3px 0px !important;display:inline-block;font-size: 13px;line-height: 18px;vertical-align:middle;border: 1px solid #ccc;overflow:auto;background-color:#FFF;color:#6A6A6A !important;-webkit-border-radius:3px;-moz-border-radius:3px;-khtml-border-radius:3px;border-radius:3px;}

.mb-board img {box-shadow:none !important;display:inline-block !important;vertical-align:middle !important;max-width:100%;height:auto;border: 0;-ms-interpolation-mode: bicubic;image-rendering: optimizeQuality;}
.mb-board label,.mb-board input,.mb-board keygen{display:inline-block !important;color:#6A6A6A !important;}
.mb-board table input.kcaptcha{text-align:center;font-weight:bold !important;font-size:13px !important;margin-left:7px !important;padding:0 6px !important;}
.mb-board label{padding-right:11px !important;vertical-align:middle !important;font-size:13px !important;line-height: 1.6 !important;border:none;}
.mb-board label:last-child{padding-right:0px !important;vertical-align:middle !important;font-size:13px !important;line-height: 1.6 !important;}

.mb-board abbr,.mb-board acronym {border: 0 !important;}
.mb-board hr {display: none !important;}
.mb-board caption {position:relative;left:-10000px;top:auto;width:1px !important; height:1px !important; overflow:hidden !important; }
.mb-board legend {display: none !important;height: 0px !important;overflow: hidden;}
.mb-board .hide-txt {position:absolute; top:0; left:0; text-indent:-9999px; visibility:hidden; overflow:hidden; font-size:0; line-height:0; width:0; height:0;}
.mb-error-message-box{text-align:center;color:#676767;font-size:20px;font-weight:bold;padding:41px 0 41px;border:1px solid #dbdbdb !important;background-color:#FBFBFB;-webkit-border-radius:3px;-moz-border-radius:3px;-khtml-border-radius:3px;border-radius:3px;}
.mb-error-message-box span{font-size:14px;font-weight:normal;}

.mb-style1 table tr,
.mb-style1 table tr th,
.mb-style1 table tr td {background:none;font-size:13px;vertical-align:middle !important;text-align:left;color:#6A6A6A;}
.mb-style1 .sub-text11{font-size:11px;color:#AAA;line-height:15px;}
.mb-style1 .sub-text12{font-size:13px;color:#999;line-height:16px;}
.mb-style1 .description,
.mb-style1 .mb-description{display: inline !important;font-size:11px;padding:0 !important;color:#AAA;}
.mb-style1 .mb-tooltip{font-weight:bold !important;cursor:pointer !important;}

/* ========================================
   프로젝트 전용 스타일
======================================== */

/* 프로젝트 목록 테이블 스타일 */
.project-list table.table-project {border-top:3px solid #2c3e50 !important;}
.project-list table.table-project th {text-align:center !important;padding:12px 8px !important;background-color:#f8f9fa !important;font-weight:600;color:#2c3e50;}
.project-list table.table-project>thead>tr>th{border-left:0 none !important;border-right:0 none !important;font-size:14px;}
.project-list table.table-project td {text-align:center;padding:12px 8px !important;background-color:#FFF !important;font-size:13px;transition:background-color 0.2s ease;}
.project-list table.table-project tr:hover td {background-color:#f8f9fa !important;}
.project-list table.table-project td.text-left {padding-left:12px !important;}
.project-list table.table-project td.text-right {padding-right:12px !important;}

/* 수행년도 뱃지 스타일 */
.project-list .year,
.project-view .project-year-badge {
    display: inline-block;
    padding: 4px 12px;
    background: linear-gradient(135deg, #3498db, #2980b9);
    color: #fff !important;
    font-weight: 600;
    font-size: 13px;
    border-radius: 20px;
    text-align: center;
}

/* 발주처 스타일 */
.project-list .client {
    color: #7f8c8d;
    font-size: 13px;
}

/* 프로젝트명 링크 스타일 */
.project-list td a {
    color: #2c3e50 !important;
    font-weight: 500;
    transition: color 0.2s ease;
}
.project-list td a:hover {
    color: #3498db !important;
    text-decoration: none !important;
}

/* 공지사항 스타일 */
.project-list .mb-notice td {background-color:#fffef5 !important;}
.project-list .mb-notice td a {color: #e74c3c !important;font-weight: 600;}

/* 빈 목록 메시지 */
.project-list .empty-message {
    text-align: center;
    padding: 60px 20px !important;
    color: #95a5a6;
    font-size: 16px;
    background-color: #f8f9fa;
}

/* ========================================
   프로젝트 상세보기 스타일
======================================== */
.project-view .project-header {
    background: linear-gradient(135deg, #2c3e50, #34495e);
    color: #fff;
    padding: 30px;
    margin-bottom: 20px;
    border-radius: 8px;
}

.project-view .project-header .project-year-badge {
    margin-bottom: 15px;
    background: rgba(255,255,255,0.2);
}

.project-view .project-header .project-title {
    margin: 0 0 15px 0;
    font-size: 24px;
    font-weight: 700;
    color: #fff !important;
    line-height: 1.4;
}

.project-view .project-header .project-client {
    font-size: 15px;
}

.project-view .project-header .project-client .label {
    color: rgba(255,255,255,0.7);
    margin-right: 10px;
}

.project-view .project-header .project-client .value {
    color: #fff;
    font-weight: 500;
}

/* 상세보기 테이블 */
.project-view .table-view {border-top:2px solid #2c3e50 !important;}
.project-view .table-view>tbody th {
    padding:15px 15px !important;
    border-right:1px solid #EFEFEF !important;
    background-color:#f8f9fa !important;
    font-weight: 600;
    color: #2c3e50;
    width: 120px;
}
.project-view .table-view>tbody td {padding:15px !important;background-color:#FFF;}
.project-view .table-view>tbody td.content-box {padding:20px !important;line-height:1.8;}

/* ========================================
   프로젝트 작성/수정 스타일
======================================== */
.project-write .project-write-header {
    background: #2c3e50;
    color: #fff;
    padding: 20px 25px;
    margin-bottom: 0;
    border-radius: 8px 8px 0 0;
}

.project-write .project-write-header h3 {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
    color: #fff !important;
}

.project-write .table-write {
    border-top: none !important;
    border: 1px solid #e0e0e0;
    border-top: none;
    border-radius: 0 0 8px 8px;
}

.project-write .table-write>tbody th {
    padding:12px 15px !important;
    border-right:1px solid #EFEFEF !important;
    background-color:#f8f9fa !important;
    font-weight: 600;
    color: #2c3e50;
}

.project-write .table-write>tbody td {padding:12px 15px !important;background-color:#FFF;}

/* 저장 버튼 강조 */
.project-write .btn-project-save {
    background: linear-gradient(135deg, #3498db, #2980b9) !important;
    color: #fff !important;
    border: none !important;
    padding: 8px 25px !important;
}

.project-write .btn-project-save:hover {
    background: linear-gradient(135deg, #2980b9, #2574a9) !important;
}

/* ========================================
   프로젝트 갤러리 스타일
======================================== */
.project-gallery .project-card {
    margin-bottom: 20px;
}

.project-gallery .project-card-wrap {
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    overflow: hidden;
    transition: box-shadow 0.3s ease, transform 0.2s ease;
    background: #fff;
}

.project-gallery .project-card-wrap:hover {
    box-shadow: 0 8px 25px rgba(0,0,0,0.1);
    transform: translateY(-3px);
}

.project-gallery .gallery-item-img {
    border: none !important;
    margin-bottom: 0 !important;
}

.project-gallery .gallery-title {
    padding: 15px 15px 8px !important;
    font-size: 15px !important;
}

.project-gallery .gallery-date {
    padding: 0 15px 5px !important;
    font-size: 12px !important;
}

.project-gallery .gallery-name {
    padding: 0 15px 15px !important;
    font-size: 13px !important;
    color: #7f8c8d !important;
}

/* ========================================
   검색 영역 스타일
======================================== */
.mb-style1 .search-field{display:inline-block !important;}
.mb-style1 .search-text{width:150px !important;}
.mb-style1 .list-i-new,.mb-style1 .list-i-img, .mb-style1 .list-i-file, .mb-style1 .list-i-secret{padding-bottom:2px;}

.mb-style1 .list-head{min-height:45px;padding-bottom:15px;}
.mb-style1 .mb-category{float:left;overflow:hidden;padding-bottom:8px;}
.mb-style1 .list-search{float:right;overflow:hidden;padding-bottom:8px;}

/* ========================================
   버튼 스타일
======================================== */
.mb-board div.btn-box-right {padding:15px 0 0 ;text-align:right;}
.mb-board div.btn-box-center {padding:15px 0 0;text-align:center;}
.mb-board div.btn-box-left {padding:15px 0 0;text-align:left;}
.mb-board .btn-box-left>.btn-box-right,
.mb-board .btn-box-right>.btn-box-left{padding:0;}
.mb-board .btn-box-right .btn{margin:0 0 0 9px;}
.mb-board .btn-box-left .btn{margin:0 9px 0 0;}

.mb-board div a{border:none;}
.mb-board a,.mb-board button{text-decoration:none !important;color:#6A6A6A !important;background:none;box-shadow:none !important;}
.mb-board a:hover,.mb-board button:hover{text-decoration:none; cursor:pointer !important;color:#333 !important;background:none;}
.mb-board button:hover{background-color:#F7F7F7 !important;}

.mb-board .btn {display:inline-block;min-width:42px;*height:30px !important;text-decoration:none !important; font-weight:bold;font-size:13px;line-height:1.4 !important;vertical-align: middle !important;}
.mb-board .btn>span{padding:0 !important;}
.mb-board .btn-default{margin:0;padding:5px 12px 5px;border: 1px solid #ccc;-webkit-border-radius:4px;-moz-border-radius:4px;-khtml-border-radius:4px;border-radius:4px;background-color:#F0F0F0 !important;height:32px !important;}
.mb-board .btn-search {margin:0;padding:5px 12px 5px !important;height:32px !important;}
.mb-board .btn-more {margin:6px 0 11px !important;padding:5px 0px !important;width:100%;text-align:center;height:32px !important;}

/* 글쓰기 버튼 강조 */
.mb-board .btn-write {
    background: linear-gradient(135deg, #27ae60, #229954) !important;
    color: #fff !important;
    border: none !important;
}
.mb-board .btn-write:hover {
    background: linear-gradient(135deg, #229954, #1e8449) !important;
    color: #fff !important;
}

/* ========================================
   페이지네이션 스타일
======================================== */
.mb-board .pagination-box {padding:20px 0 !important;}
.mb-board .pagination-large {display:block !important;padding-top:21px !important; text-align:center;}
.mb-board .pagination-large .table-page{table-layout:auto;width:auto !important;margin:0 auto !important;background:none;border:none !important;}
.mb-board .pagination-large .table-page tr,
.mb-board .pagination-large .table-page td{background:none !important;padding:0px !important;height:20px !important;border:none !important;}
.mb-board .pagination-large td.btn-page a{padding:5px 14px !important;text-decoration: none;border:1px solid #e0e0e0;margin:0 2px;border-radius:4px;}
.mb-board .pagination-large td.active{font-weight:bold;color:#2c3e50;}
.mb-board .pagination-large td.active a{background:#2c3e50 !important;color:#fff !important;border-color:#2c3e50;}

/* ========================================
   댓글 스타일
======================================== */
.mb-board .cmt-style1 .cmt-count-box {padding:15px 0 8px 15px !important;font-size:15px;font-weight:600;color:#2c3e50;}
.mb-board .cmt-style1 .cmt-input-head table{border:1px solid #e0e0e0 !important;border-bottom:none !important;border-radius:8px 8px 0 0;overflow:hidden;}
.mb-board .cmt-input-box textarea{width:100%;min-height:80px !important;display:inline-block !important;}

.mb-board .cmt-input-box th {padding:10px 15px !important;background-color:#f8f9fa;}
.mb-board .cmt-input-box td {padding:10px 15px !important;background-color:#f8f9fa;}

.mb-board .cmt-list-box{margin-top:16px;padding:10px 15px;border-top:1px solid #e0e0e0 !important;border-bottom:1px solid #e0e0e0 !important;background-color:#FBFBFB;border-radius:8px;}
.mb-board .cmt-list-item {border-bottom:dashed 1px #EEE !important;padding:12px 8px !important;}
.mb-board .cmt-list-item .cmt-name {font-weight:600;font-size:13px;color:#2c3e50;}
.mb-board .cmt-list-item .cmt-date {font-size:12px;color:#95a5a6;margin-left:15px !important;font-weight:normal;}
.mb-board .cmt-list-item .cmt-content {padding:8px 0 0 !important;line-height:1.6;}

/* ========================================
   비밀글 스타일
======================================== */
.mb-board .secret{max-width:360px;margin:50px auto !important;padding:30px !important;text-align:center;border:1px solid #e0e0e0 !important;border-radius:12px;background:#fff;box-shadow:0 4px 15px rgba(0,0,0,0.08);}
.mb-board .secret .secret-title{padding:10px 10px 20px !important;font-weight:600;font-size:15px;color:#2c3e50;}
.mb-board .secret .secret-form{padding-bottom:20px !important;}
.mb-board .secret .secret-form input{width: 220px !important; vertical-align: middle;text-align:center;height:40px !important;font-size:14px;}

/* ========================================
   이전글/다음글 스타일
======================================== */
.mb-style1 .table-prev-next {margin-top:20px !important;border-top:1px solid #e0e0e0 !important;border-radius:8px;overflow:hidden;}
.mb-style1 .table-prev-next th,
.mb-style1 .table-prev-next td {padding:12px 15px !important;background:none;font-size:13px;vertical-align:middle;background-color:#FFF;}
.mb-style1 .table-prev-next th {background-color:#f8f9fa !important;font-weight:600;color:#2c3e50;}

/* ========================================
   반응형 스타일
======================================== */

/* 데스크탑 */
.mb-desktop-large .list-head,
.mb-desktop .list-head{min-height:45px;}
.mb-desktop-large .mb-category,
.mb-desktop .mb-category{float:left;overflow:hidden;padding-bottom:8px;}
.mb-desktop-large .list-search,
.mb-desktop .list-search{float:right;overflow:hidden;padding-bottom:8px;}

/* 모바일 */
.mb-mobile .list-title{padding:10px 8px !important;position:relative;font-size:14px !important;}
.mb-mobile .mb-category{text-align:center;padding-bottom:10px;}
.mb-mobile .mb-category select{width:100% !important;margin-bottom:8px !important}
.mb-mobile .list-search{text-align:right;padding-bottom:8px !important}

.mb-mobile .project-view .project-header {padding:20px;}
.mb-mobile .project-view .project-header .project-title {font-size:18px;}

/* 태블릿 */
.mb-tablet .list-head{min-height:45px;}
.mb-tablet .mb-category{float:left;overflow:hidden;padding-bottom:8px;}
.mb-tablet .list-search{float:right;overflow:hidden;padding-bottom:8px !important}

/* ========================================
   탭 메뉴 스타일
======================================== */
.mb-board .tab-menu-off{display:inline-block;min-width:50px;min-height:32px;padding:4px 15px;border:1px solid #e0e0e0;text-align:center !important;border-radius:4px;margin-right:5px;}
.mb-board .tab-menu-on{display:inline-block;min-width:50px;min-height:32px;padding:4px 15px;border:1px solid #2c3e50;text-align:center !important;background-color:#2c3e50 !important;color:#FFF !important;border-radius:4px;margin-right:5px;}
.mb-board button.tab-menu-on:hover{background-color:#34495e !important;}
.mb-board .tab-menu-on span{color:#FFF !important;}

/* ========================================
   파일 다운로드 스타일
======================================== */
.mb-board .file-download{margin-right:10px !important;}
.mb-board .file-download a {
    display: inline-block;
    padding: 6px 12px;
    background: #f8f9fa;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    color: #2c3e50 !important;
    font-size: 12px;
    margin-bottom: 5px;
}
.mb-board .file-download a:hover {
    background: #e9ecef;
}
.mb-board .file-size{font-size:10px;color:#95a5a6;}
