/* SmartBiz 테마 게시판 공용 스타일 — list/view/write 스킨이 공유한다 */

.sb_board { max-width: 900px; margin: 3rem auto; padding: 0 1.25rem; }
.sb_board_head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 1.5rem; flex-wrap: wrap; gap: .75rem; }
.sb_board_head h2 { font-size: 1.5rem; margin: 0; }
.sb_board_total { color: var(--sb-ink-faint); font-size: .85rem; }

.sb_board_search { display: flex; gap: .5rem; margin-bottom: 1.5rem; }
.sb_board_search select, .sb_board_search input[type="text"] {
    border: 1px solid var(--sb-line); border-radius: 6px; padding: .5rem .75rem; font-size: .9rem;
}
.sb_board_search input[type="text"] { flex: 1; }

.sb_list { list-style: none; margin: 0 0 2rem; padding: 0; border-top: 2px solid var(--sb-ink); }
.sb_list li { border-bottom: 1px solid var(--sb-line); }
.sb_list a { display: flex; align-items: center; gap: .75rem; padding: 1rem .25rem; }
.sb_list a:hover .sb_list_subject { color: var(--sb-main); }
.sb_list_num { flex: 0 0 3rem; color: var(--sb-ink-faint); font-size: .85rem; text-align: center; }
.sb_list_notice { flex: 0 0 3rem; text-align: center; font-size: .75rem; font-weight: 800; color: var(--sb-sub); }
.sb_list_subject { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sb_list_meta { flex: 0 0 auto; display: flex; gap: .85rem; font-size: .8rem; color: var(--sb-ink-faint); }
.sb_list_lock { color: var(--sb-ink-faint); margin-right: .25rem; }
.sb_list_empty { padding: 3rem 0; text-align: center; color: var(--sb-ink-faint); }

.sb_board_actions { display: flex; justify-content: flex-end; gap: .5rem; margin-bottom: 1.5rem; }

.sb_paging { display: flex; justify-content: center; gap: .35rem; margin: 2rem 0; }
.sb_paging a, .sb_paging strong { display: inline-flex; align-items: center; justify-content: center; min-width: 32px; height: 32px; border-radius: 6px; font-size: .85rem; }
.sb_paging strong { background: var(--sb-main); color: #fff; }
.sb_paging a { color: var(--sb-ink-soft); }
.sb_paging a:hover { background: var(--sb-bg-alt); }

/* view */
.sb_view_head { border-bottom: 2px solid var(--sb-ink); padding-bottom: 1.25rem; margin-bottom: 1.5rem; }
.sb_view_head h2 { font-size: 1.4rem; margin: 0 0 .75rem; }
.sb_view_meta { display: flex; gap: 1rem; font-size: .85rem; color: var(--sb-ink-faint); }
.sb_view_images { display: flex; flex-direction: column; gap: 1rem; margin-bottom: 1.5rem; }
.sb_view_images img { border-radius: var(--sb-radius); max-width: 100%; height: auto; }
.sb_view_content { min-height: 8rem; line-height: 1.8; margin-bottom: 2rem; overflow-wrap: break-word; }
.sb_view_content img { max-width: 100%; height: auto; }
.sb_view_files { list-style: none; margin: 0 0 2rem; padding: 1rem; background: var(--sb-bg-alt); border-radius: var(--sb-radius); }
.sb_view_files li { font-size: .88rem; padding: .3rem 0; }
.sb_view_nav { list-style: none; margin: 0 0 1.5rem; padding: 0; border-top: 1px solid var(--sb-line); }
.sb_view_nav li { display: flex; gap: .75rem; padding: .75rem 0; border-bottom: 1px solid var(--sb-line); font-size: .88rem; }
.sb_view_nav span { flex: 0 0 4rem; color: var(--sb-ink-faint); }

/* secret notice */
.sb_secret_notice { background: var(--sb-bg-alt); border-radius: var(--sb-radius); padding: 2rem; text-align: center; color: var(--sb-ink-soft); }

/* write form */
.sb_form_row { margin-bottom: 1.1rem; }
.sb_form_row label { display: block; font-weight: 700; font-size: .9rem; margin-bottom: .4rem; }
.sb_form_row input[type="text"], .sb_form_row input[type="email"], .sb_form_row input[type="password"],
.sb_form_row textarea, .sb_form_row select {
    width: 100%; border: 1px solid var(--sb-line); border-radius: 6px; padding: .65rem .8rem; font-size: .95rem;
    font-family: inherit;
}
.sb_form_row textarea { min-height: 220px; resize: vertical; }
.sb_form_check { display: flex; align-items: center; gap: .5rem; font-size: .9rem; }
.sb_form_notice { background: var(--sb-bg-alt); border-radius: var(--sb-radius); padding: 1rem 1.25rem; font-size: .88rem; color: var(--sb-ink-soft); margin-bottom: 1.5rem; }
.sb_form_actions { display: flex; justify-content: flex-end; gap: .5rem; margin-top: 1.5rem; }

/* comments */
.sb_comments { margin-top: 2.5rem; border-top: 2px solid var(--sb-ink); padding-top: 1.5rem; }
.sb_comments h3 { font-size: 1.1rem; }
.sb_comment_list { list-style: none; margin: 0 0 1.5rem; padding: 0; }
.sb_comment_item { padding: 1rem 0; border-bottom: 1px solid var(--sb-line); }
.sb_comment_meta { font-size: .82rem; color: var(--sb-ink-faint); margin-bottom: .35rem; }
.sb_comment_meta strong { color: var(--sb-ink); }
