/* ============================================
   basic_style.css - GeneratePress-like Clean Theme
   깔끔한 워드프레스 블로그 스타일
   ============================================ */

/* === 기본 === */
* { box-sizing: border-box; }

body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Noto Sans KR', 'Helvetica Neue', Arial, sans-serif;
  font-size: 17px;
  line-height: 1.8;
  color: #222;
  background: #f7f8f9;
  -webkit-font-smoothing: antialiased;
}

a { color: #1e73be; text-decoration: none; }
a:hover { color: #143a5c; text-decoration: underline; }

img { max-width: 100%; height: auto; }

/* === 레이아웃 === */
.container {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px;
}

/* === 헤더 === */
.site-header {
  background: #fff;
  padding: 20px 0;
  border-bottom: 1px solid #e8e8e8;
}

.site-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.page_name {
  font-size: 28px;
  font-weight: 700;
  margin: 0;
  line-height: 1.2;
}

.page_name a,
.page_name a span { color: #222 !important; text-decoration: none; }
.page_name a:hover { text-decoration: none; color: #1e73be !important; }

.site-desc {
  display: block;
  font-size: 14px;
  color: #666;
  font-weight: 400;
  margin-top: 4px;
}

/* === 네비게이션 === */
.site-nav {
  background: #222;
}

.site-nav .container {
  padding: 0;
}

.category {
  display: flex;
  align-items: center;
}

ul#menu_nav {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
}

ul#menu_nav li a {
  display: block;
  padding: 12px 20px;
  color: #fff;
  font-size: 15px;
  font-weight: 400;
  transition: background 0.15s;
  border-bottom: none;
}

ul#menu_nav li a:hover,
ul#menu_nav li a.bo_cate_on {
  background: #1e73be;
  color: #fff;
  text-decoration: none;
}

/* === 메인 콘텐츠 영역 === */
.main-container {
  max-width: 800px;
  margin: 30px auto;
  padding: 0 20px;
}

.main-content-wrap {
  background: #fff;
  padding: 30px;
  border-radius: 0;
  box-shadow: none;
}

/* === 광고 그리드 === */
.ad-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  padding: 20px 0;
  max-width: 1100px;
  margin: 0 auto;
}

.ad-item {
  background: #fff;
  border: 1px solid #e8e8e8;
}

/* === 포스트 리스트 === */
.row.main {
  max-width: 800px !important;
  margin: 30px auto;
}

.main-content {
  padding: 0;
}

.post-list {
  display: flex;
  flex-direction: column;
}

.article-sumarry {
  display: flex;
  align-items: flex-start;
  gap: 24px;
  padding: 25px 0;
  border-bottom: 1px solid #e8e8e8;
  background: none !important;
}

.article-sumarry:first-child {
  padding-top: 0;
}

.article-sumarry .thum {
  flex-shrink: 0;
  width: 200px;
  height: 140px;
  overflow: hidden;
  display: block;
  background: #f0f0f0;
}

.article-sumarry .thum img {
  width: 200px !important;
  height: 140px !important;
  object-fit: cover;
}

.article-sumarry:hover .thum img {
  opacity: 0.9;
}

.article-body,
.article-sumarry dl {
  flex: 1;
  min-width: 0;
}

.article-cate { margin-bottom: 4px; }

.article-cate .badge,
.article-sumarry .badge {
  background: #1e73be;
  color: #fff;
  font-size: 11px;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 3px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

h2.article-title,
.article-sumarry dt {
  font-size: 22px !important;
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0 8px 0 !important;
  padding: 0 !important;
  border: none !important;
  color: #222;
}

h2.article-title a,
.article-sumarry dt a { color: #222; text-decoration: none; }
h2.article-title a:hover,
.article-sumarry dt a:hover { color: #1e73be; text-decoration: none; }

p.article-desc,
.article-sumarry dd {
  font-size: 15px;
  color: #666;
  line-height: 1.6;
  margin: 0 0 8px 0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.article-date,
.article-sumarry dd time {
  font-size: 13px;
  color: #999;
}

.empty-content {
  padding: 60px 0;
  text-align: center;
  color: #999;
}

/* === 포스트 뷰 === */
.row.page {
  max-width: 800px !important;
  margin: 30px auto;
}

h1.daum-wm-title,
.daum-wm-title {
  font-size: 36px !important;
  font-weight: 700;
  line-height: 1.3;
  color: #222 !important;
  border-bottom: none !important;
  padding: 0 0 10px !important;
  margin-bottom: 10px;
  letter-spacing: -0.5px;
}

/* === 본문 === */
.content {
  font-size: 17px;
  line-height: 1.8;
  color: #222;
  padding: 20px 0 !important;
}

.content p {
  font-size: 17px !important;
  line-height: 1.8 !important;
  margin-bottom: 1.5em;
  color: #222;
}

.content h1 {
  font-size: 32px;
  font-weight: 700;
  margin: 50px 0 20px;
  color: #222;
}

.content h2 {
  font-size: 26px;
  font-weight: 700;
  margin: 45px 0 15px;
  padding-bottom: 10px;
  border-bottom: 2px solid #222;
  color: #222;
}

.content h3 {
  font-size: 22px;
  font-weight: 600;
  margin: 35px 0 12px;
  color: #222;
}

.content h4 {
  font-size: 18px;
  font-weight: 600;
  margin: 25px 0 10px;
  color: #333;
}

.content img {
  max-width: 100% !important;
  height: auto !important;
  margin: 20px 0;
}

.content blockquote {
  border-left: 4px solid #1e73be;
  padding: 15px 20px;
  margin: 25px 0;
  background: #f7f8f9;
  color: #555;
  font-style: italic;
}

.content blockquote p { margin-bottom: 0.5em; }

.content ul, .content ol {
  padding-left: 30px;
  margin-bottom: 1.5em;
}

.content li {
  margin-bottom: 6px;
  line-height: 1.8;
}

.content hr {
  border: none;
  border-top: 1px solid #e8e8e8;
  margin: 40px 0;
}

.content code {
  background: #f0f0f0;
  padding: 2px 6px;
  border-radius: 3px;
  font-size: 0.9em;
  font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
}

.content pre {
  background: #1d1f21;
  color: #c5c8c6;
  padding: 20px;
  border-radius: 4px;
  overflow-x: auto;
  margin: 25px 0;
  font-size: 14px;
  line-height: 1.6;
}

.content pre code { background: none; color: inherit; padding: 0; }

/* 테이블 */
.content table {
  width: 100% !important;
  border-collapse: collapse;
  margin: 25px 0;
  font-size: 15px !important;
  background: #fff !important;
}

.content table th {
  background: #f7f8f9 !important;
  font-weight: 600;
  padding: 10px 15px !important;
  text-align: left !important;
  border: 1px solid #e8e8e8 !important;
}

.content table td {
  padding: 10px 15px !important;
  border: 1px solid #e8e8e8 !important;
  text-align: left !important;
}

/* 목차 */
.content nav {
  background: #f7f8f9 !important;
  border: 1px solid #e8e8e8 !important;
  border-radius: 4px !important;
  padding: 20px 25px !important;
  margin-bottom: 30px !important;
  display: inline-block;
}

.content nav ul { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.content nav li { padding: 4px 0; font-size: 14px; }
.content nav a { color: #1e73be; }
.content nav a:hover { text-decoration: underline; }

.content iframe { max-width: 100%; }

/* === 태그 === */
.tags { padding: 15px 0; }

.tags .tag {
  display: inline-block;
  background: #f0f0f0 !important;
  color: #555 !important;
  padding: 4px 12px !important;
  border-radius: 3px !important;
  font-size: 13px;
  margin: 2px 4px 2px 0 !important;
  letter-spacing: 0 !important;
}

.tags .tag:hover {
  background: #e0e0e0 !important;
  color: #222 !important;
  text-decoration: none;
}

/* === 관련 글 === */
#related {
  border-top: 1px solid #e8e8e8;
  margin-top: 30px;
  padding-top: 20px;
}

#related > div:first-child {
  font-size: 18px;
  font-weight: 700;
  color: #222;
  margin-bottom: 10px;
}

/* === 추천/비추천 === */
.rating {
  border-radius: 4px !important;
  padding: 8px 20px !important;
  font-size: 14px;
  margin: 0 4px;
  border: 1px solid #e8e8e8 !important;
  background: #fff;
}

.rating:hover { background: #f7f8f9 !important; }

/* === 사이드바 === */
.sidebar-row {
  margin-top: 30px;
  padding-top: 20px;
  border-top: 1px solid #e8e8e8;
}

.sidebar-left {
  background: #f7f8f9 !important;
  border: none !important;
  padding: 20px;
}

.sidebar-right {
  background: transparent !important;
  border: none !important;
  padding: 20px;
}

.page_ment { font-size: 14px; color: #666; line-height: 1.6; }
.page_contact { font-size: 13px; color: #888; margin-top: 12px; }

/* === 푸터 === */
.site-footer {
  margin-top: 40px;
  padding: 25px 0;
  border-top: 1px solid #e8e8e8;
  background: #222;
  text-align: center;
}

.footer-nav { margin-bottom: 12px; }
.footer-nav a {
  display: inline-block;
  padding: 0 12px;
  font-size: 13px;
  color: #aaa;
}
.footer-nav a:hover { color: #fff; text-decoration: none; }

.footer-copy {
  font-size: 13px;
  color: #999;
}

/* 이전 푸터 셀렉터 오버라이드 */
.container.px-4.pb-4.small.text-center {
  padding: 25px 16px !important;
  color: #999;
  font-size: 13px !important;
  border-top: 1px solid #e8e8e8;
  margin-top: 40px;
  background: #222;
}
.container.px-4.pb-4.small.text-center a { color: #aaa; }

/* === 페이징 === */
.paging-wrap, .pg_wrap {
  text-align: center;
  padding: 25px 0;
}

.pg_wrap a, .pg_wrap .pg_current {
  display: inline-block;
  min-width: 36px;
  height: 36px;
  line-height: 36px;
  padding: 0 10px;
  margin: 0 2px;
  font-size: 14px;
  text-align: center;
  border: 1px solid #e8e8e8;
}

.pg_wrap a { color: #222; background: #fff; }
.pg_wrap a:hover { background: #f7f8f9; text-decoration: none; }

.pg_wrap .pg_current {
  background: #222;
  color: #fff;
  border-color: #222;
  font-weight: 700;
}

/* === latest 위젯 === */
.latest_top_wr { margin-top: 20px; }

#container_title {
  font-size: 22px;
  font-weight: 700;
  color: #222;
  margin: 0 0 15px;
  padding: 0;
  border: none;
}

/* === 유틸리티 === */
.ft-bold { font-weight: 700; }
.sound_only {
  position: absolute;
  width: 1px; height: 1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
}

/* Tailwind 클래스 대체 (home/head.php 레거시) */
.bg-gray-100 { background-color: #f7f8f9 !important; }
.max-w-screen-xl { max-width: 1100px; margin: 0 auto; }
.mx-auto { margin-left: auto; margin-right: auto; }
.grid { display: grid; }
.grid-cols-1 { grid-template-columns: 1fr; }
.gap-6 { gap: 1.5rem; }
.rounded-lg { border-radius: 4px; }
.shadow { box-shadow: 0 1px 3px rgba(0,0,0,0.08); }
.col-span-1 { grid-column: span 1; }
.relative { position: relative; }
.py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.divide-y > * + * { border-top: 1px solid #e8e8e8; }
.divide-gray-200 > * + * { border-color: #e8e8e8; }

@media (min-width: 640px) {
  .sm\:grid-cols-2 { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  .lg\:grid-cols-3 { grid-template-columns: repeat(3, 1fr); }
}

/* === 반응형 === */
@media (max-width: 768px) {
  body { font-size: 16px; }

  .page_name { font-size: 22px; }

  .site-nav { overflow-x: auto; }
  ul#menu_nav li a { padding: 10px 14px; font-size: 14px; }

  .row.main,
  .row.page { margin: 20px auto; }

  .row.page > div { max-width: 100% !important; padding: 0 16px !important; }

  .main-container { margin: 20px auto; padding: 0 16px; }
  .main-content-wrap { padding: 20px; }

  h1.daum-wm-title,
  .daum-wm-title { font-size: 28px !important; }

  .article-sumarry { gap: 16px; padding: 20px 0; }
  .article-sumarry .thum { width: 140px; height: 100px; }
  .article-sumarry .thum img { width: 140px !important; height: 100px !important; }
  h2.article-title,
  .article-sumarry dt { font-size: 18px !important; }

  .content h2 { font-size: 22px; }
  .content h3 { font-size: 19px; }

  .ad-grid { grid-template-columns: 1fr; gap: 10px; }
}

@media (max-width: 480px) {
  .page_name { font-size: 20px; }

  h1.daum-wm-title,
  .daum-wm-title { font-size: 24px !important; }

  .article-sumarry .thum { width: 100px; height: 75px; }
  .article-sumarry .thum img { width: 100px !important; height: 75px !important; }
  h2.article-title,
  .article-sumarry dt { font-size: 16px !important; }

  .content h2 { font-size: 20px; }
  .content h3 { font-size: 17px; }
}

/* ============================================
   Board Skin Overrides - GeneratePress Style
   게시판 스킨 (list, view, write, comment)
   ============================================ */

/* === 게시판 목록 (#bo_list) === */
#bo_list { margin-bottom: 30px; }

#bo_list .tbl_head01 table {
  width: 100%;
  border-collapse: collapse;
}

#bo_list .tbl_head01 thead th {
  background: #f7f8f9;
  color: #555;
  font-size: 13px;
  font-weight: 600;
  padding: 10px 12px;
  border-bottom: 2px solid #e8e8e8;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

#bo_list .tbl_head01 tbody td {
  padding: 12px;
  border-bottom: 1px solid #f0f0f0;
  font-size: 14px;
  color: #444;
  vertical-align: middle;
}

#bo_list tbody tr:hover {
  border-left: 2px solid #1e73be;
  background: #f9fbfd;
}

#bo_list tbody .even td { background: #fafbfc; }
#bo_list tbody tr:hover td { background: #f4f8fc; }

.bo_tit { font-size: 15px; font-weight: 500; }
.bo_tit a { color: #222; }
.bo_tit a:hover { color: #1e73be; text-decoration: none; }

.bo_cate_link {
  background: #eef4fb !important;
  color: #1e73be !important;
  font-size: 12px !important;
  padding: 3px 8px !important;
  border-radius: 3px !important;
}

#bo_list .cnt_cmt {
  background: #eef4fb;
  color: #1e73be;
  font-size: 11px;
  padding: 1px 5px;
  border-radius: 3px;
}

.bo_notice td { background: #fffdf5 !important; border-bottom-color: #f5ecd0 !important; }
.bo_notice .notice_icon { color: #e8760c; }

#bo_list .bo_tit .new_icon {
  background: #d4f5e0;
  color: #1a8a4a;
}

#bo_list .bo_tit .hot_icon {
  background: #fde0e0;
  color: #d63031;
}

/* 목록 상단 버튼 */
#bo_btn_top { margin: 15px 0; padding: 10px 0; }

#bo_list_total {
  font-size: 14px;
  color: #666;
}

.btn_bo_user li { margin-left: 4px; }

.btn_bo_user .btn,
.btn_b01.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: 1px solid #e8e8e8;
  border-radius: 4px;
  background: #fff;
  color: #555;
  font-size: 14px;
  transition: all 0.15s;
}

.btn_bo_user .btn:hover,
.btn_b01.btn:hover {
  background: #f7f8f9;
  border-color: #1e73be;
  color: #1e73be;
  text-decoration: none;
}

/* 더보기 옵션 */
.more_opt {
  border: 1px solid #e8e8e8;
  border-radius: 4px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  top: 42px;
}

.more_opt li { padding: 8px 14px; font-size: 13px; }
.more_opt li:hover button,
.more_opt li:hover a { color: #1e73be; }

/* 카테고리 */
#bo_cate { margin: 20px 0; }

#bo_cate a {
  border: 1px solid #e8e8e8;
  color: #555;
  font-size: 14px;
  padding: 6px 16px;
  border-radius: 20px;
  transition: all 0.15s;
}

#bo_cate a:hover,
#bo_cate a:focus,
#bo_cate a:active {
  background: #1e73be;
  color: #fff;
  border-color: #1e73be;
}

#bo_cate #bo_cate_on {
  background: #1e73be;
  color: #fff;
  border-color: #1e73be;
  box-shadow: none;
}

/* 검색 모달 */
.bo_sch {
  border: 1px solid #e8e8e8;
  border-radius: 8px;
  box-shadow: 0 8px 30px rgba(0,0,0,0.15);
}

.bo_sch h3 {
  font-size: 16px;
  font-weight: 600;
  color: #222;
  border-bottom: 1px solid #e8e8e8;
}

.bo_sch select,
.bo_sch .sch_bar {
  border: 1px solid #e8e8e8;
  border-radius: 4px;
}

.bo_sch .sch_btn { color: #1e73be; }

/* 체크박스 */
.chk_box input[type="checkbox"]:checked + label span {
  background: url(../skin/board/basic/img/chk.png) no-repeat 50% 50% #1e73be;
  border-color: #1563a0;
}

/* === 게시판 뷰 (#bo_v) === */
#bo_v {
  background: #fff;
  margin-bottom: 30px;
}

#bo_v_title .bo_v_cate {
  background: #eef4fb;
  color: #1e73be;
  font-size: 13px;
  padding: 2px 10px;
  border-radius: 3px;
}

#bo_v_title .bo_v_tit {
  font-size: 28px;
  font-weight: 700;
  line-height: 1.4;
  color: #222;
  word-break: keep-all;
}

#bo_v_info {
  border-bottom: 1px solid #e8e8e8;
  color: #666;
  padding-bottom: 15px;
}

#bo_v_info .profile_info { margin: 15px 0 10px; }

#bo_v_info .profile_info .pf_img img {
  border-radius: 50%;
  width: 44px;
  height: 44px;
}

#bo_v_info .sv_member { color: #222; font-weight: 600; }
#bo_v_info .if_date { color: #999; font-size: 13px; }

#bo_v_info strong {
  font-size: 14px;
  font-weight: normal;
  color: #666;
}

/* 본문 */
#bo_v_con {
  font-size: 17px;
  line-height: 1.8;
  color: #222;
  margin: 20px 0 30px;
}

#bo_v_con a { color: #1e73be; }
#bo_v_con img { max-width: 100%; height: auto; margin: 15px 0; }

/* 첨부파일 */
#bo_v_file li,
#bo_v_link li {
  border: 1px solid #e8e8e8;
  border-radius: 4px;
  box-shadow: none;
  padding: 12px 15px;
  margin: 8px 0;
  transition: border-color 0.15s;
}

#bo_v_file li:hover,
#bo_v_link li:hover {
  border-color: #1e73be;
}

#bo_v_file li:hover i,
#bo_v_link li:hover i { color: #1e73be; }

#bo_v_file a:hover,
#bo_v_link a:hover { color: #1e73be; }

.bo_v_file_cnt,
.bo_v_link_cnt { color: #999; font-size: 13px; }

#bo_v_file li:hover .bo_v_file_cnt { color: #7ab3e6; }

/* 추천/비추천 */
#bo_v_act { margin: 30px 0; }

#bo_v_act .bo_v_good,
#bo_v_act .bo_v_nogood {
  border: 1px solid #e8e8e8;
  border-radius: 30px;
  padding: 0;
  width: 80px;
  line-height: 46px;
  font-size: 14px;
  color: #555;
  transition: all 0.15s;
}

#bo_v_act .bo_v_good:hover {
  border-color: #1e73be;
  color: #1e73be;
  background: #f4f8fc;
}

#bo_v_act .bo_v_nogood:hover {
  border-color: #e74c3c;
  color: #e74c3c;
  background: #fef5f4;
}

/* SNS 공유 */
#bo_v_share { padding: 15px 0; border-bottom: 1px solid #e8e8e8; }

#bo_v_share .btn {
  border: 1px solid #e8e8e8;
  border-radius: 4px;
  font-size: 13px;
  color: #555;
  padding: 0 12px;
  height: 34px;
  line-height: 34px;
}

#bo_v_share .btn:hover {
  border-color: #1e73be;
  color: #1e73be;
  background: #fff;
}

/* 이전/다음 글 */
.bo_v_nb { margin: 25px 0; }

.bo_v_nb li {
  border-top: 1px solid #f0f0f0;
  padding: 12px 15px;
  font-size: 14px;
  transition: background 0.15s;
}

.bo_v_nb li:last-child { border-bottom: 1px solid #f0f0f0; }
.bo_v_nb li:hover { background: #f9fbfd; }

.bo_v_nb .nb_tit {
  color: #999;
  font-size: 13px;
  min-width: 80px;
  display: inline-block;
}

.bo_v_nb li a { color: #222; }
.bo_v_nb li a:hover { color: #1e73be; }
.bo_v_nb .nb_date { color: #bbb; font-size: 13px; }

/* === 댓글 === */
.cmt_btn {
  border-bottom: 2px solid #e8e8e8;
  font-size: 15px;
  padding: 0 0 12px;
  margin: 30px 0 0;
}

.cmt_btn span.total { color: #1e73be; }
.cmt_btn span.total:after { background: #1e73be; }

#bo_vc article {
  margin: 15px 0;
  padding-bottom: 15px;
  border-bottom: 1px solid #f0f0f0;
}

#bo_vc article .pf_img img { width: 40px; height: 40px; }
#bo_vc .member,
#bo_vc .sv_member { color: #222; font-weight: 600; }

#bo_vc .cmt_contents {
  line-height: 1.7;
  font-size: 15px;
  color: #333;
  padding: 8px 0 15px;
}

.bo_vc_act {
  border: 1px solid #e8e8e8;
  border-radius: 4px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}

.bo_vc_act li a:hover { color: #1e73be; }

/* 댓글 작성 */
.bo_vc_w textarea {
  border: 1px solid #e8e8e8;
  border-radius: 4px;
  padding: 12px;
  font-size: 14px;
  line-height: 1.6;
  resize: vertical;
  transition: border-color 0.15s;
}

.bo_vc_w textarea:focus {
  border-color: #1e73be;
  outline: none;
  box-shadow: 0 0 0 3px rgba(30,115,190,0.1);
}

.bo_vc_w .btn_submit {
  height: 42px;
  padding: 0 24px;
  border-radius: 4px;
  font-weight: 600;
  font-size: 14px;
  background: #1e73be;
  color: #fff;
  border: none;
  cursor: pointer;
  transition: background 0.15s;
}

.bo_vc_w .btn_submit:hover { background: #1563a0; }

/* === 글쓰기 (#bo_w) === */
#bo_w .write_div { margin: 12px 0; }

#bo_w .frm_input,
.frm_input {
  border: 1px solid #e8e8e8;
  border-radius: 4px;
  padding: 8px 12px;
  font-size: 14px;
  height: 40px;
  transition: border-color 0.15s;
}

#bo_w .frm_input:focus,
.frm_input:focus {
  border-color: #1e73be;
  outline: none;
  box-shadow: 0 0 0 3px rgba(30,115,190,0.1);
}

#bo_w .bo_w_select select {
  border: 1px solid #e8e8e8;
  border-radius: 4px;
  height: 40px;
  padding: 0 12px;
  font-size: 14px;
}

#bo_w .btn_submit {
  padding: 0 24px;
  height: 44px;
  border-radius: 4px;
  background: #1e73be;
  color: #fff;
  border: none;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.15s;
}

#bo_w .btn_submit:hover { background: #1563a0; }

#bo_w .btn_cancel {
  border-radius: 4px;
  background: #f7f8f9;
  color: #555;
  border: 1px solid #e8e8e8;
  font-size: 15px;
  height: 44px;
  padding: 0 24px;
  cursor: pointer;
}

#bo_w .btn_cancel:hover { background: #eee; }

/* === latest 위젯 스타일 === */
.lat, .pic_li_lt {
  margin-bottom: 25px;
}

.lat_title {
  font-size: 18px !important;
  font-weight: 700;
  color: #222;
  padding-bottom: 10px;
  border-bottom: 2px solid #222;
  margin-bottom: 0;
}

.lat_title a { color: #222; }
.lat_title a:hover { color: #1e73be; }

.lat ul, .pic_li_lt ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.lat li, .pic_li_lt li {
  padding: 10px 0;
  border-bottom: 1px solid #f0f0f0;
}

.lat li a, .pic_li_lt li a {
  color: #222;
  font-size: 15px;
  line-height: 1.5;
}

.lat li a:hover, .pic_li_lt li a:hover {
  color: #1e73be;
  text-decoration: none;
}

.lt_info {
  margin-top: 4px;
  font-size: 13px;
  color: #999;
}

.lt_info .lt_nick { margin-right: 8px; }

.lt_more {
  display: inline-block;
  margin-top: 10px;
  font-size: 13px;
  color: #1e73be;
  font-weight: 500;
}

.lt_more:hover { text-decoration: underline; }

.empty_li {
  padding: 20px 0 !important;
  color: #999;
  text-align: center;
  font-size: 14px;
}

.hot_icon {
  margin-left: 6px;
  color: #e74c3c;
  font-size: 12px;
}

/* page_main 영역 */
.page-main-area {
  padding: 15px 0;
  margin-bottom: 15px;
  border-bottom: 1px solid #e8e8e8;
}

/* 네이버 오픈메인 */
.nv-openmain { margin: 20px 0; }
