@charset "utf-8";
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&family=Poppins:wght@400;500;600;700&display=swap");

/* =========================================================
   BOARD SKIN – CNP Design System (orange theme)
   ========================================================= */
:root {
  --b-orange:       #E07B1A;
  --b-orange-dark:  #C26812;
  --b-orange-light: #F5A623;
  --b-orange-pale:  #FFF3E0;
  --b-orange-glow:  rgba(224,123,26,.25);
  --b-dark:         #141414;
  --b-gray-900:     #222;
  --b-gray-700:     #555;
  --b-gray-400:     #999;
  --b-gray-200:     #e5e5e5;
  --b-gray-100:     #f5f5f5;
  --b-white:        #fff;
  --b-radius:       8px;
  --b-shadow:       0 2px 12px rgba(0,0,0,.06);
  --b-transition:   .25s cubic-bezier(.4,0,.2,1);
}

/* ── BOARD WRAPPER ── */
.skinWrap{margin:0 auto;font-family:'Noto Sans KR','Apple SD Gothic Neo',sans-serif;font-size:13px;color:var(--b-gray-900)}

/* ── BOARD TITLE / HEADER ── */
.board-title-area{margin-bottom:20px}
.board-title-area h2{font-size:20px;font-weight:800;color:var(--b-gray-900);margin:0}
.board-info{display:flex;align-items:center;gap:16px;margin-top:8px;font-size:12px;color:var(--b-gray-400)}

/* ── CATEGORY TAB ── */
.board-category{margin-bottom:16px}
.board-category ul{display:flex;flex-wrap:wrap;gap:4px;list-style:none;padding:0;margin:0}
.board-category li{display:inline-block}
.board-category li a{
  display:inline-block;padding:6px 16px;font-size:12px;font-weight:500;
  color:var(--b-gray-700);background:var(--b-gray-100);border-radius:20px;
  transition:var(--b-transition);
}
.board-category li a:hover{background:var(--b-orange-pale);color:var(--b-orange)}
.board-category li.nowCategory a{background:var(--b-orange);color:#fff;font-weight:600}

/* ── LIST TABLE ── */
.board-list{width:100%;border-collapse:collapse}
.board-list thead th{
  padding:10px 12px;font-size:12px;font-weight:600;color:var(--b-gray-700);
  background:var(--b-gray-100);border-bottom:2px solid var(--b-gray-200);
  text-align:center;white-space:nowrap;
}
.board-list tbody td{
  padding:11px 12px;border-bottom:1px solid var(--b-gray-100);
  font-size:13px;vertical-align:middle;
}
.board-list tbody tr:hover td{background:rgba(224,123,26,.03)}
.board-list .td-no{text-align:center;width:60px;color:var(--b-gray-400);font-size:12px}
.board-list .td-title{text-align:left}
.board-list .td-title a{font-weight:500;color:var(--b-gray-900);transition:color .2s}
.board-list .td-title a:hover{color:var(--b-orange)}
.board-list .td-name{text-align:center;width:100px;font-size:12px}
.board-list .td-date{text-align:center;width:90px;color:var(--b-gray-400);font-size:12px}
.board-list .td-hit{text-align:center;width:60px;color:var(--b-gray-400);font-size:12px}
.board-list .td-recomm{text-align:center;width:50px;font-size:12px}
.board-list .td-down{text-align:center;width:50px;font-size:12px}
.board-list .td-check{text-align:center;width:36px}

/* notice row */
.board-list tr.notice td{background:var(--b-orange-pale)}
.board-list tr.notice .td-no{color:var(--b-orange);font-weight:700}

/* reply indent */
.board-list .reply-icon{color:var(--b-gray-400);margin-right:4px;font-size:11px}

/* badges */
.badge-new{
  display:inline-block;padding:1px 5px;margin-left:4px;font-size:10px;font-weight:700;
  color:#fff;background:#ff4444;border-radius:3px;vertical-align:middle;line-height:1.4;
}
.badge-secret{color:var(--b-gray-400);margin-left:4px;font-size:11px}
.badge-file{color:var(--b-gray-400);margin-left:4px;font-size:11px}
.badge-image{color:var(--b-orange);margin-left:4px;font-size:11px}
.badge-cmt{color:var(--b-orange);font-size:11px;font-weight:600;margin-left:2px}

/* ── GALLERY / ZINE GRID ── */
.board-gallery{display:grid;grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));gap:16px;margin-bottom:20px}
.board-gallery-item{
  background:var(--b-white);border:1px solid var(--b-gray-200);border-radius:var(--b-radius);
  overflow:hidden;transition:var(--b-transition);
}
.board-gallery-item:hover{box-shadow:var(--b-shadow);transform:translateY(-2px)}
.board-gallery-item .thumb{
  width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--b-gray-100);
}
.board-gallery-item .info{padding:12px}
.board-gallery-item .info .title{font-size:13px;font-weight:600;color:var(--b-gray-900);margin-bottom:4px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.board-gallery-item .info .title a{color:inherit;transition:color .2s}
.board-gallery-item .info .title a:hover{color:var(--b-orange)}
.board-gallery-item .info .gallery-desc{font-size:12px;color:var(--b-gray-700);line-height:1.5;margin-bottom:6px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.board-gallery-item .info .meta{font-size:11px;color:var(--b-gray-400)}

/* zine style */
.board-zine{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}
.board-zine-item{
  display:flex;gap:16px;padding:16px;background:var(--b-white);
  border:1px solid var(--b-gray-200);border-radius:var(--b-radius);
  transition:var(--b-transition);
}
.board-zine-item:hover{box-shadow:var(--b-shadow)}
.board-zine-item .thumb{width:160px;height:120px;flex-shrink:0;object-fit:cover;border-radius:6px;background:var(--b-gray-100)}
.board-zine-item .info{flex:1;display:flex;flex-direction:column;justify-content:center}
.board-zine-item .info .title{font-size:15px;font-weight:600;margin-bottom:6px}
.board-zine-item .info .title a{color:var(--b-gray-900);transition:color .2s}
.board-zine-item .info .title a:hover{color:var(--b-orange)}
.board-zine-item .info .desc{font-size:12px;color:var(--b-gray-700);line-height:1.6;margin-bottom:6px;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.board-zine-item .info .meta{font-size:11px;color:var(--b-gray-400)}

/* ── NO DATA ── */
.board-empty{padding:60px 20px;text-align:center;color:var(--b-gray-400);font-size:14px}

/* ── PAGING ── */
.board-paging{display:flex;justify-content:center;align-items:center;gap:4px;margin:20px 0}
.board-paging a, .board-paging span{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:32px;height:32px;padding:0 8px;
  font-size:13px;color:var(--b-gray-700);
  border:1px solid var(--b-gray-200);border-radius:6px;
  transition:var(--b-transition);
}
.board-paging a:hover{border-color:var(--b-orange);color:var(--b-orange)}
.board-paging .now{background:var(--b-orange);color:#fff;border-color:var(--b-orange);font-weight:700}
.board-paging .nav-btn{font-size:11px;color:var(--b-gray-400)}
.board-paging .nav-btn:hover{color:var(--b-orange)}

/* ── SEARCH ── */
.board-search{display:flex;justify-content:center;gap:8px;margin:16px 0}
.board-search select{
  padding:8px 12px;border:1px solid var(--b-gray-200);border-radius:6px;
  font-size:13px;background:var(--b-white);
}
.board-search input[type="text"],
.board-search input[type="search"]{
  padding:8px 12px;border:1px solid var(--b-gray-200);border-radius:6px;
  font-size:13px;width:200px;
}
.board-search input:focus, .board-search select:focus{
  outline:none;border-color:var(--b-orange);box-shadow:0 0 0 3px var(--b-orange-glow);
}
.board-search button{
  padding:8px 20px;background:var(--b-orange);color:#fff;border:none;
  border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:var(--b-transition);
}
.board-search button:hover{background:var(--b-orange-dark)}

/* ── BUTTONS ── */
.board-buttons{display:flex;justify-content:space-between;align-items:center;margin:16px 0;flex-wrap:wrap;gap:8px}
.board-buttons .left{display:flex;gap:6px}
.board-buttons .right{display:flex;gap:6px}
.btn-board{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 18px;font-size:13px;font-weight:600;border-radius:6px;
  cursor:pointer;transition:var(--b-transition);border:none;
}
.btn-board-primary{background:var(--b-orange);color:#fff}
.btn-board-primary:hover{background:var(--b-orange-dark)}
.btn-board-outline{background:var(--b-white);color:var(--b-gray-700);border:1px solid var(--b-gray-200)}
.btn-board-outline:hover{border-color:var(--b-orange);color:var(--b-orange)}
.btn-board-danger{background:#ff4444;color:#fff}
.btn-board-danger:hover{background:#e03030}

/* ── CONTENT VIEW ── */
.board-content-wrap{background:var(--b-white);border-radius:var(--b-radius);border:1px solid var(--b-gray-200);margin-bottom:20px;overflow:hidden}
.board-content-header{padding:24px 24px 16px;border-bottom:1px solid var(--b-gray-100)}
.board-content-header .title{font-size:20px;font-weight:800;color:var(--b-gray-900);margin-bottom:10px;line-height:1.4}
.board-content-header .meta{display:flex;flex-wrap:wrap;gap:16px;font-size:12px;color:var(--b-gray-400)}
.board-content-header .meta span{display:flex;align-items:center;gap:4px}
.board-content-header .meta i{font-size:11px;color:var(--b-gray-400)}

.board-content-body{padding:24px;line-height:1.8;font-size:14px;min-height:200px}
.board-content-body img{max-width:100%;height:auto;border-radius:4px}
.content-thumbs{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}
.content-thumb{margin:0;border:1px solid var(--b-gray-200);border-radius:var(--b-radius);overflow:hidden;background:var(--b-gray-100);width:220px}
.content-thumb img{display:block;width:100%;height:auto;border-radius:0}
.content-thumb figcaption{font-size:11px;color:var(--b-gray-400);text-align:center;padding:4px 0;background:var(--b-white)}
.content-descs{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;padding:14px 16px;background:var(--b-gray-100);border-radius:var(--b-radius)}
.content-desc{display:flex;gap:8px;font-size:13px;line-height:1.6}
.content-desc .desc-label{flex:0 0 auto;font-weight:600;color:var(--b-orange);min-width:64px}
.content-desc .desc-text{flex:1;color:var(--b-gray-900);word-break:break-word}

.board-content-files{padding:16px 24px;background:var(--b-gray-100);border-top:1px solid var(--b-gray-200)}
.board-content-files .file-item{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:12px}
.board-content-files .file-item i{color:var(--b-orange)}
.board-content-files .file-item a{color:var(--b-gray-700);transition:color .2s}
.board-content-files .file-item a:hover{color:var(--b-orange)}
.board-content-files .file-item .size{color:var(--b-gray-400)}

/* prev/next */
.board-prevnext{border-top:1px solid var(--b-gray-200);font-size:13px}
.board-prevnext .row{display:flex;padding:10px 24px;border-bottom:1px solid var(--b-gray-100)}
.board-prevnext .label{width:60px;flex-shrink:0;font-weight:600;color:var(--b-gray-400)}
.board-prevnext .label i{margin-right:4px;font-size:11px}
.board-prevnext a{color:var(--b-gray-700);transition:color .2s}
.board-prevnext a:hover{color:var(--b-orange)}

/* ── COMMENT ── */
.board-comment{margin-top:20px}
.board-comment-title{font-size:14px;font-weight:700;margin-bottom:12px;display:flex;align-items:center;gap:6px}
.board-comment-title .count{color:var(--b-orange)}

.comment-item{padding:12px 0;border-bottom:1px solid var(--b-gray-100)}
.comment-item .comment-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.comment-item .comment-name{font-size:13px;font-weight:600;color:var(--b-gray-900)}
.comment-item .comment-date{font-size:11px;color:var(--b-gray-400)}
.comment-item .comment-actions{margin-left:auto;display:flex;gap:8px}
.comment-item .comment-actions a{font-size:11px;color:var(--b-gray-400);cursor:pointer;transition:color .2s}
.comment-item .comment-actions a:hover{color:var(--b-orange)}
.comment-item .comment-body{font-size:13px;line-height:1.7;color:var(--b-gray-700)}

.comment-form{display:block;margin-top:16px;padding:16px;background:var(--b-gray-100);border-radius:var(--b-radius)}
.comment-form form{width:100%}
.comment-form .form-row{display:flex;gap:8px;margin-bottom:8px;flex-wrap:wrap}
.comment-form input[type="text"],
.comment-form input[type="password"]{
  padding:8px 12px;border:1px solid var(--b-gray-200);border-radius:6px;
  font-size:13px;flex:1;min-width:120px;
}
.comment-form textarea{
  width:100%;padding:10px 12px;border:1px solid var(--b-gray-200);border-radius:6px;
  font-size:13px;resize:vertical;min-height:80px;font-family:inherit;
}
.comment-form input:focus, .comment-form textarea:focus{
  outline:none;border-color:var(--b-orange);box-shadow:0 0 0 3px var(--b-orange-glow);
}
.comment-form .btn-comment{
  padding:8px 20px;background:var(--b-orange);color:#fff;border:none;
  border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;
}

/* ── WRITE FORM ── */
.board-write{background:var(--b-white);border:1px solid var(--b-gray-200);border-radius:var(--b-radius);padding:24px;margin-bottom:20px}
.board-write .form-group{margin-bottom:16px}
.board-write .form-group label{display:block;font-size:13px;font-weight:600;color:var(--b-gray-700);margin-bottom:6px}
.board-write .form-group input[type="text"],
.board-write .form-group input[type="password"],
.board-write .form-group input[type="email"],
.board-write .form-group select{
  width:100%;padding:10px 12px;border:1px solid var(--b-gray-200);border-radius:6px;
  font-size:13px;font-family:inherit;
}
.board-write .form-group input:focus, .board-write .form-group select:focus, .board-write .form-group textarea:focus{
  outline:none;border-color:var(--b-orange);box-shadow:0 0 0 3px var(--b-orange-glow);
}
.board-write .form-group textarea{
  width:100%;padding:10px 12px;border:1px solid var(--b-gray-200);border-radius:6px;
  font-size:13px;resize:vertical;min-height:300px;font-family:inherit;
}
.board-write .option-group{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}
.board-write .option-group label{font-size:13px;cursor:pointer;display:flex;align-items:center;gap:4px}
.board-write .file-group{margin-bottom:16px}
.board-write .file-group .file-item{display:flex;align-items:center;gap:8px;margin-bottom:8px}

/* ── DELETE CONFIRM ── */
.board-delete{
  max-width:400px;margin:40px auto;padding:32px;text-align:center;
  background:var(--b-white);border:1px solid var(--b-gray-200);border-radius:var(--b-radius);
}
.board-delete h3{font-size:16px;font-weight:700;margin-bottom:16px}
.board-delete p{font-size:13px;color:var(--b-gray-700);margin-bottom:16px}
.board-delete input[type="password"]{
  width:100%;padding:10px 12px;border:1px solid var(--b-gray-200);border-radius:6px;
  font-size:13px;margin-bottom:16px;text-align:center;
}
.board-delete input:focus{outline:none;border-color:var(--b-orange);box-shadow:0 0 0 3px var(--b-orange-glow)}

/* ── ADMIN CONTROLS ── */
.admin-controls{display:flex;gap:8px;margin-bottom:12px;padding:8px 12px;background:var(--b-gray-100);border-radius:6px;font-size:12px}
.admin-controls a{color:var(--b-gray-700);cursor:pointer;transition:color .2s;padding:2px 6px}
.admin-controls a:hover{color:var(--b-orange)}

/* ── RESPONSIVE ── */
@media(max-width:768px){
  .board-list thead{display:none}
  .board-list tbody td{display:block;text-align:left;padding:4px 12px}
  .board-list tbody td:first-child{padding-top:12px}
  .board-list tbody td:last-child{padding-bottom:12px;border-bottom:1px solid var(--b-gray-200)}
  .board-list .td-no,.board-list .td-hit,.board-list .td-down,.board-list .td-recomm{display:none}
  .board-gallery{grid-template-columns:repeat(auto-fill, minmax(150px, 1fr))}
  .board-zine-item{flex-direction:column}
  .board-zine-item .thumb{width:100%;height:180px}
  .board-content-header,.board-content-body{padding:16px}
}
