:root {
    --header-bg: #a5d6a7;
    --body-bg: #fffdf8;
    --ink: #27352f;
    --main: #0b4f3a;
    --brown: #6d4c41;
    --cream: #f7efe3;
    --line: #e4ded4;
    --muted: #6b746f;
    --danger: #9b2c2c;
    --max: 1100px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--body-bg); color: var(--ink); font-family: "Noto Sans KR", "Malgun Gothic", Arial, sans-serif; line-height: 1.75; }
a { color: var(--main); text-decoration: none; }
a:hover { text-decoration: underline; }
.site-header { position: sticky; top: 0; z-index: 50; background: var(--header-bg); border-bottom: 1px solid rgba(0,0,0,.08); }
.header-inner { max-width: var(--max); min-height: 82px; margin: 0 auto; padding: 0 24px; display: flex; align-items: center; gap: 26px; }
.brand { color: var(--main); font-weight: 900; font-size: 1.65rem; white-space: nowrap; }
.site-menu { display: flex; gap: 18px; align-items: center; flex-wrap: wrap; margin-left: auto; }
.site-menu a { color: #183d30; font-weight: 700; }
.site-menu .admin-link { padding: 7px 12px; border: 1px solid rgba(11,79,58,.35); border-radius: 999px; }
.menu-button { display: none; margin-left: auto; border: 1px solid rgba(0,0,0,.18); background: rgba(255,255,255,.55); border-radius: 8px; padding: 8px 12px; font-weight: 700; }
.site-main { max-width: var(--max); margin: 0 auto; padding: 38px 24px 70px; min-height: calc(100vh - 180px); }
.hero { background: linear-gradient(135deg, #fff 0%, var(--cream) 100%); border: 1px solid var(--line); border-radius: 20px; padding: 42px; margin-bottom: 30px; }
.hero h1 { margin: 0 0 12px; color: var(--main); font-size: clamp(2rem, 4vw, 3.2rem); }
.hero p { margin: 0; color: var(--muted); font-size: 1.08rem; }
.board-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; margin: 28px 0 44px; }
.board-card { background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 24px; box-shadow: 0 8px 25px rgba(65,47,35,.05); }
.board-card h2 { margin: 0 0 8px; font-size: 1.25rem; }
.board-card p { margin: 0; color: var(--muted); font-size: .95rem; }
.section-head { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin: 34px 0 16px; }
.section-head h1, .section-head h2 { margin: 0; color: var(--brown); }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 10px 16px; border: 0; border-radius: 10px; background: var(--main); color: #fff; font-weight: 800; cursor: pointer; }
.button:hover { text-decoration: none; filter: brightness(.96); }
.button.secondary { background: var(--brown); }
.button.light { background: var(--cream); color: var(--brown); border: 1px solid #d8c7b5; }
.post-list { border-top: 2px solid var(--brown); background: #fff; }
.post-row { display: grid; grid-template-columns: 92px 1fr 120px; align-items: center; gap: 18px; padding: 18px 10px; border-bottom: 1px solid var(--line); }
.post-thumb { width: 92px; height: 72px; border-radius: 10px; background: var(--cream); object-fit: cover; }
.post-title { margin: 0 0 5px; font-size: 1.08rem; font-weight: 850; }
.post-meta { color: var(--muted); font-size: .88rem; }
.notice-badge, .status-badge { display: inline-block; font-size: .75rem; line-height: 1; padding: 5px 7px; border-radius: 999px; background: #f2dfbe; color: #6a4710; font-weight: 800; vertical-align: middle; }
.article { max-width: 800px; margin: 0 auto; }
.article-head { border-bottom: 2px solid var(--brown); padding-bottom: 20px; margin-bottom: 28px; }
.article-head h1 { margin: 0 0 12px; font-size: clamp(1.75rem,4vw,2.5rem); line-height: 1.3; }
.article-content { font-size: 17px; line-height: 1.9; overflow-wrap: anywhere; }
.article-content img { max-width: 100%; height: auto; display: block; margin: 28px auto; border-radius: 10px; }
.article-content table { width: 100%; border-collapse: collapse; margin: 22px 0; }
.article-content th, .article-content td { border: 1px solid #d9d2c8; padding: 10px; }
.article-content blockquote { margin: 24px 0; padding: 14px 18px; border-left: 5px solid var(--header-bg); background: #f6faf6; }
.featured-image { width: 100%; max-height: 600px; object-fit: contain; background: #fff; border-radius: 14px; margin-bottom: 26px; }
.form-card, .comments, .comment-form { max-width: 800px; margin: 28px auto; background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 24px; }
.field { margin-bottom: 18px; }
.field label { display: block; font-weight: 800; margin-bottom: 7px; }
.field input[type=text], .field input[type=password], .field input[type=email], .field input[type=number], .field textarea, .field select { width: 100%; padding: 11px 12px; border: 1px solid #cfc7bc; border-radius: 9px; background: #fff; font: inherit; }
.field textarea { min-height: 180px; resize: vertical; }
.field small { display: block; color: var(--muted); margin-top: 5px; }
.two-cols { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.comment { padding: 18px 0; border-bottom: 1px solid var(--line); }
.comment:last-child { border-bottom: 0; }
.comment-head { display: flex; gap: 10px; align-items: center; margin-bottom: 7px; }
.comment-author { font-weight: 850; }
.comment-date { color: var(--muted); font-size: .85rem; }
.flash { padding: 13px 16px; margin: 0 0 18px; border-radius: 10px; border: 1px solid transparent; }
.flash-success { background: #e8f7eb; border-color: #b9dfc2; color: #235b31; }
.flash-error { background: #fff0ef; border-color: #e7b8b4; color: #8a2424; }
.empty { padding: 34px; text-align: center; color: var(--muted); background: #fff; border: 1px dashed #cfc7bc; border-radius: 12px; }
.pagination { display: flex; justify-content: center; gap: 7px; margin: 28px 0; }
.pagination a, .pagination span { min-width: 36px; height: 36px; display: inline-flex; align-items: center; justify-content: center; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.pagination .current { background: var(--main); color: #fff; border-color: var(--main); }
.site-footer { border-top: 1px solid var(--line); background: #f8f3ea; }
.footer-inner { max-width: var(--max); margin: 0 auto; padding: 30px 24px; display: flex; justify-content: space-between; gap: 20px; color: var(--muted); }
.honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
@media (max-width: 900px) {
    .board-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .post-row { grid-template-columns: 76px 1fr; }
    .post-row > .post-date { grid-column: 2; }
    .post-thumb { width: 76px; height: 62px; }
}
@media (max-width: 720px) {
    .header-inner { min-height: 68px; padding: 0 16px; flex-wrap: wrap; }
    .brand { font-size: 1.35rem; }
    .menu-button { display: block; }
    .site-menu { display: none; width: 100%; flex-direction: column; align-items: stretch; gap: 0; margin: 0 -16px; padding: 8px 16px 16px; background: var(--header-bg); }
    .site-menu.is-open { display: flex; }
    .site-menu a { padding: 11px 4px; border-bottom: 1px solid rgba(0,0,0,.08); }
    .site-main { padding: 24px 14px 50px; }
    .hero { padding: 28px 22px; }
    .board-grid { grid-template-columns: 1fr; }
    .post-row { grid-template-columns: 1fr; }
    .post-thumb { width: 100%; height: 180px; }
    .post-row > .post-date { grid-column: auto; }
    .two-cols { grid-template-columns: 1fr; }
    .form-card, .comments, .comment-form { padding: 18px; }
    .footer-inner { flex-direction: column; }
}
.dictionary-search{display:grid;grid-template-columns:1fr 180px auto;gap:10px}.legal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:20px 0}.legal-card h2{margin:.25rem 0;color:#5d4037}.legal-meta{font-size:.85rem;color:#6d4c41}.legal-short{font-size:1.08rem;font-weight:700}.example-box,.quiz-box{background:#fff6e8;border-left:5px solid #8d6e63;padding:12px 15px;margin-top:14px;border-radius:8px}.character-strip{display:flex;gap:12px;align-items:center}.character-strip img{width:54px;height:54px;object-fit:contain}@media(max-width:700px){.dictionary-search{grid-template-columns:1fr}.legal-grid{grid-template-columns:1fr}}


/* v1.2.5 — 4지선다 보기 번호 */
.ung-quiz-number{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;margin-right:7px;border-radius:50%;background:#eef6ef;color:#2d6a4f;font-weight:800}
.ung-quiz-option.is-correct .ung-quiz-number{background:#5ca16b;color:#fff}
.ung-quiz-option.is-wrong .ung-quiz-number{background:#d6756d;color:#fff}


/* v1.2.9 게시판 3열 + 상단 미디어 */
.site-header{background:#fffaf3;border-bottom:1px solid #eadfce}.header-inner{max-width:1100px}.brand{color:#5c3b22}.site-menu a{color:#4a3525}.site-menu .admin-link{border-color:rgba(109,76,65,.25)}
.ung-board-wrap--enhanced{max-width:800px!important;padding-top:6px}.ung-board-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px;padding-bottom:10px;border-bottom:2px solid #2d6a4f}.ung-board-head h1{margin:0;color:#1d6a55;font-size:2rem;line-height:1.25}.ung-board-desc{margin:8px 0 0;color:#6b746f;font-size:.98rem}.ung-write-link{white-space:nowrap;border-radius:12px;padding:11px 18px}
.ung-board-hero{margin:0 0 18px}.ung-board-hero-media,.ung-board-hero-frame{display:block;width:100%;aspect-ratio:16/6;border-radius:18px;background:#f4eee5;border:1px solid #e7dccb;overflow:hidden;object-fit:cover}.ung-board-hero-frame iframe{width:100%;height:100%;border:0}
.ung-card-grid--board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ung-card-grid--board .ung-post-card{margin:0!important;height:100%;border:1px solid #e8dfd2;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 8px 20px rgba(74,53,37,.06)}.ung-card-grid--board .ung-post-card-link{display:flex;flex-direction:column;height:100%;text-decoration:none}.ung-card-grid--board .ung-card-thumb{width:100%;height:165px;object-fit:cover;display:block;background:#f5efe6}.ung-card-grid--board .ung-card-thumb-empty{display:flex;align-items:center;justify-content:center;color:#9c8f81;font-weight:700}.ung-card-grid--board .ung-card-body{padding:14px 14px 16px;display:flex;flex-direction:column;gap:8px;flex:1}.ung-card-grid--board .ung-card-title{margin:0;font-size:1.08rem;line-height:1.45;color:#2e2b28}.ung-card-grid--board .ung-card-excerpt{margin:0;color:#73695f;font-size:.93rem;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ung-card-grid--board .ung-card-meta{margin-top:auto;display:flex;flex-direction:column;gap:2px;color:#8b7f72;font-size:.82rem}.ung-card-grid--board .ung-card-badges{display:flex;flex-wrap:wrap;gap:6px}.ung-card-grid--board .ung-cat-tag,.ung-card-grid--board .ung-notice-badge,.ung-card-grid--board .ung-series-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:.74rem;font-weight:700}.ung-card-grid--board .ung-cat-tag{background:#eef5e8;color:#52733b}.ung-card-grid--board .ung-notice-badge{background:#fff3dd;color:#8b6018}.ung-card-grid--board .ung-series-badge{background:#e8f4ed;color:#1f6b51}.ung-count-line{margin:16px 0 0;color:#86796b;font-size:.92rem}
@media (max-width: 900px){.ung-card-grid--board{grid-template-columns:repeat(2,minmax(0,1fr))}.ung-board-head h1{font-size:1.8rem}}
@media (max-width: 640px){.ung-board-head{flex-direction:column;align-items:stretch}.ung-write-link{width:100%}.ung-card-grid--board{grid-template-columns:1fr}.ung-board-hero-media,.ung-board-hero-frame{aspect-ratio:16/9}.site-menu{background:#fffaf3}}


/* v1.3.0 실제 홈·로고·흰 배경 */
:root{--body-bg:#ffffff;--header-bg:#ffffff;--cream:#fffaf3;--line:#eadfce;--max:1100px}
body{background:#fff!important}.site-header{background:#fff!important;border-bottom:1px solid #eadfce!important;box-shadow:0 2px 14px rgba(72,50,32,.035)}
.header-inner{min-height:78px}.brand-logo{display:flex;align-items:center;gap:9px;text-decoration:none!important}.brand-characters{display:flex;align-items:center}.brand-characters img{width:34px;height:34px;object-fit:contain;margin-left:-7px}.brand-characters img:first-child{margin-left:0}.brand-name{font-size:1.6rem;font-weight:900;letter-spacing:-.06em;color:#5b351d}.site-main{background:#fff}.site-footer{background:#fffaf3}
@media(max-width:640px){.brand-characters img{width:29px;height:29px}.brand-name{font-size:1.35rem}}


/* v1.3.1 화이트 헤더 / 로고 이미지 (전역, 모든 페이지 공통) */
:root{--header-bg:#ffffff;--body-bg:#ffffff;--ink:#2f251e;--main:#5f4329;--brown:#5f4329;--line:#ece2d2;--max:1100px;}
body{background:#fff !important;color:var(--ink);}
.site-header{position:sticky;top:0;z-index:50;background:#fff !important;border-bottom:1px solid #eadfce !important;}
.header-inner{max-width:1100px;min-height:86px;padding:0 22px;gap:28px;}
.brand-image img{display:block;height:48px;width:auto;}
.site-menu{gap:18px;}
.site-menu a,.site-menu summary{color:#423122;font-weight:700;}
.site-menu .admin-link{border:1px solid #dcccb6;border-radius:999px;padding:10px 16px;background:#fff7ed;}
.site-main{max-width:1100px;padding:26px 22px 70px;background:#fff;}
.site-footer{background:#fff;border-top:1px solid #ece2d2;}
.footer-inner{max-width:1100px;padding:24px 22px;color:#7c6f61;}
@media (max-width: 720px){.header-inner{min-height:72px;padding:0 16px;}.brand-image img{height:40px}.site-menu{background:#fff}.site-main{padding:18px 14px 52px}}

/* v1.3.2 캐시 갱신 및 브랜드 로고 크기 보정 (전역) */
.brand-image{display:inline-flex!important;align-items:center!important;overflow:visible!important;}
.brand-image img{display:block!important;width:auto!important;height:46px!important;max-width:220px!important;object-fit:contain!important;margin:0!important;}
@media(max-width:720px){.brand-image img{height:38px!important;max-width:170px!important}}

/* ============================================================
   홈 화면 전용 스타일 (v1.6.0)
   -----------------------------------------------------------
   - 공지 1줄(.home-notice-line) + 카테고리 4개(.home-group),
     각 카테고리는 최신글 3개(.home-post-row)를 세로 1열로 표시합니다.
   - 이 블록이 .home-* 클래스의 유일한 정의입니다.
     (예전 히어로/카드형 홈 디자인 CSS와 layout-fix.css의 중복 정의,
      index.php 안에 있던 인라인 <style>은 모두 제거하고 여기 하나로
      통합했습니다. .page-home으로 스코프되어 있어 다른 페이지에는
      영향을 주지 않습니다.)
   ============================================================ */
.page-home .site-main{max-width:960px}

.page-home .home-notice-line{
    display:flex;align-items:center;gap:10px;
    margin:4px 0 28px;padding:13px 16px;
    border:1px solid #e5d9c8;border-radius:10px;background:#fffaf3;
    color:#3a3028;text-decoration:none;
}
.page-home .home-notice-line:hover{border-color:#d6c2a6}
.page-home .home-notice-label{
    flex:0 0 auto;padding:3px 10px;border-radius:999px;
    background:#C94A45;color:#fff;font-size:.8rem;font-weight:800;
}
.page-home .home-notice-title{
    min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    font-weight:700;
}

.page-home .home-groups{display:flex;flex-direction:column;gap:34px}

.page-home .home-group-head{
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    margin:0 0 12px;padding:0 0 10px;border-bottom:2px solid #2e5c8a;
}
.page-home .home-group-head h2{margin:0;font-size:1.3rem;line-height:1.3;color:#2e5c8a}
.page-home .home-group-head a{font-size:.88rem;font-weight:700;color:#6f6255;text-decoration:none}
.page-home .home-group-head a:hover{text-decoration:underline}

.page-home .home-group-empty{
    margin:0;padding:20px;border:1px dashed #dfd3c3;border-radius:12px;
    color:#8a7c6e;text-align:center;background:#fffdf9;
}

.page-home .home-post-list{
    display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;
}

.page-home .home-post-row{
    display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:12px;
    min-height:210px;padding:18px 14px 16px;
    border:1px solid #eadfce;border-radius:16px;background:#fff;overflow:hidden;
    color:#332a23;text-decoration:none;text-align:center;
    box-shadow:0 5px 16px rgba(74,53,35,.045);
    transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.page-home .home-post-row:hover{
    transform:translateY(-2px);border-color:#d6c2a6;
    box-shadow:0 9px 22px rgba(74,53,35,.09);text-decoration:none;
}

.page-home .home-post-thumb{
    display:block;flex:0 0 100px;width:100px;height:100px;
    border-radius:12px;object-fit:cover;object-position:center;background:#f7f1e7;
}
.page-home .home-post-thumb-empty{
    display:flex;align-items:center;justify-content:center;
    background:#f7f1e7;color:#8d7b68;font-size:.72rem;font-weight:700;text-align:center;
}

.page-home .home-post-title{
    width:100%;min-width:0;margin:0;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
    font-size:.98rem;line-height:1.5;color:#332a23;font-weight:800;word-break:keep-all;
}

@media(max-width:760px){
    .page-home .home-post-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
    .page-home .home-groups{gap:26px}
    .page-home .home-notice-line{margin-bottom:22px}
    .page-home .home-post-list{grid-template-columns:1fr}
    .page-home .home-post-row{min-height:0;flex-direction:row;align-items:center;text-align:left;padding:12px}
    .page-home .home-post-title{width:auto;flex:1 1 auto}
}

/* =========================================================
 * v1.5.55 게시판 공통 중앙 정렬 + 브랜드 배너
 * - 상단 메뉴와 게시판 사이에 공통 배너 이미지를 표시합니다.
 * - 일반 게시판 본문 폭을 800px로 고정하고 항상 가운데 정렬합니다.
 * - 자유게시판도 동일한 800px 중심축을 사용합니다.
 * ========================================================= */
.ung-board-brand-banner{
    width:100%;
    max-width:800px;
    margin:0 auto 22px;
    border:1px solid #eadfce;
    border-radius:16px;
    overflow:hidden;
    background:#fffaf3;
    box-shadow:0 6px 18px rgba(74,53,37,.05);
}
.ung-board-brand-banner img{
    display:block;
    width:100%;
    height:auto;
    aspect-ratio:1200/213;
    object-fit:cover;
}
.ung-board-wrap--enhanced{
    width:100%;
    max-width:800px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box;
}
.ub-free-shell{
    width:100%!important;
    max-width:800px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box;
}
@media (max-width: 860px){
    .ung-board-brand-banner,
    .ung-board-wrap--enhanced,
    .ub-free-shell{
        max-width:100%!important;
    }
    .ung-board-brand-banner{margin-bottom:16px;border-radius:12px}
}


/* ============================================================
   v1.5.56 공통 브랜드 배너 / 홈과 게시판 정렬 통일
   - 새 캐릭터를 따로 생성하지 않고, 사이트에서 이미 사용 중인
     /assets/branding/home-hero.jpg 한 장을 홈과 모든 게시판에 공통 사용합니다.
   - 홈과 일반 게시판, 자유게시판의 콘텐츠 기준 폭을 960px로 맞춰
     좌우 시작점이 서로 어긋나지 않도록 합니다.
   ============================================================ */
.ung-common-brand-banner{
    width:100%;
    max-width:960px;
    margin:0 auto 24px;
    overflow:hidden;
    border:1px solid #eadfce;
    border-radius:16px;
    background:#fffaf3;
    box-sizing:border-box;
}
.ung-common-brand-banner img{
    display:block;
    width:100%;
    height:auto;
    margin:0;
    object-fit:cover;
}

.page-home .site-main{max-width:960px}
.ung-board-wrap--enhanced{max-width:960px!important;margin-left:auto!important;margin-right:auto!important}
.ung-free-shell{max-width:960px!important;margin-left:auto!important;margin-right:auto!important}

/* v1.5.55에서 사용한 별도 게시판 배너 스타일은 더 이상 레이아웃을 지배하지 않음 */
.ung-board-brand-banner{display:none!important}

@media(max-width:1004px){
    .ung-common-brand-banner,
    .ung-board-wrap--enhanced,
    .ung-free-shell{max-width:100%!important}
}
@media(max-width:640px){
    .ung-common-brand-banner{margin-bottom:18px;border-radius:12px}
}

/* ============================================================
   v1.5.57 게시판 목록 정리
   - 큰 공통 히어로는 홈에서만 사용하고 board.php에서는 제거합니다.
   - 게시판은 홈과 같은 960px 중심축을 사용합니다.
   - 잘림 현상을 막기 위해 게시판 컨테이너/헤더 overflow를 해제합니다.
   - 제목, 구분선, 관리자 글쓰기 버튼을 브랜드 네이비로 통일합니다.
   ============================================================ */
.ung-board-wrap--enhanced{
    width:100%;
    max-width:960px!important;
    margin:0 auto!important;
    padding-top:24px!important;
    box-sizing:border-box;
    overflow:visible!important;
}
.ung-board-head{
    overflow:visible!important;
    margin-bottom:18px!important;
    padding-bottom:12px!important;
    border-bottom:2px solid #2E5C8A!important;
}
.ung-board-head h1{
    color:#2E5C8A!important;
}
.ung-board-desc{
    color:#6f7479!important;
}
.ung-board-wrap--enhanced .ung-write-link{
    background:#2E5C8A!important;
    border-color:#2E5C8A!important;
    color:#fff!important;
    box-shadow:none!important;
}
.ung-board-wrap--enhanced .ung-write-link:hover{
    background:#244b72!important;
    border-color:#244b72!important;
}
.ung-board-wrap--enhanced .pagination .current{
    background:#2E5C8A!important;
    border-color:#2E5C8A!important;
    color:#fff!important;
}
.ung-board-wrap--enhanced .pagination a:hover{
    color:#2E5C8A!important;
    border-color:#2E5C8A!important;
}
/* 공지 한 줄이 상단 경계에 끼이거나 잘리지 않도록 여유 확보 */
.ung-board-wrap--enhanced > a[style*="white-space:nowrap"]{
    margin-top:0!important;
    margin-bottom:20px!important;
    overflow:hidden!important;
}
@media(max-width:1004px){
    .ung-board-wrap--enhanced{max-width:calc(100% - 32px)!important}
}
@media(max-width:640px){
    .ung-board-wrap--enhanced{max-width:calc(100% - 24px)!important;padding-top:18px!important}
    .ung-board-head{gap:12px}
}

/* ============================================================
   v1.5.58 게시판 카드 홈 스타일 통일
   - 일반 게시판 카드도 홈처럼 목록이미지(featured_image) + 제목만 표시합니다.
   - 본문 첫 이미지/슬라이드 이미지는 목록용으로 자동 사용하지 않습니다.
   - PC 3열, 태블릿 2열, 모바일 1열을 유지합니다.
   - 공지는 차분한 빨강, 제목 구분선은 베이지 브라운으로 정리합니다.
   ============================================================ */
.ung-board-head{border-bottom-color:#D8C4A8!important}
.ung-board-notice-line{
    display:flex;align-items:center;gap:10px;width:100%;box-sizing:border-box;
    margin:0 0 20px;padding:13px 16px;border:1px solid #e5d9c8;border-radius:10px;
    background:#fffaf3;color:#3a3028;text-decoration:none;white-space:nowrap;overflow:hidden;
}
.ung-board-notice-line:hover{border-color:#d6c2a6;text-decoration:none}
.ung-board-notice-label{
    flex:0 0 auto;padding:3px 10px;border-radius:999px;
    background:#C94A45;color:#fff;font-size:.8rem;font-weight:800;
}
.ung-board-notice-line > span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.ung-card-grid--board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ung-card-grid--board .ung-post-card{
    margin:0!important;min-height:210px;height:100%;padding:0!important;
    border:1px solid #eadfce;border-radius:16px;background:#fff;overflow:hidden;
    box-shadow:0 5px 16px rgba(74,53,35,.045);
    transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.ung-card-grid--board .ung-post-card:hover{
    transform:translateY(-2px);border-color:#d6c2a6;
    box-shadow:0 9px 22px rgba(74,53,35,.09);
}
.ung-card-grid--board .ung-post-card-link{
    display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:12px;
    height:100%;padding:18px 14px 16px;box-sizing:border-box;color:#332a23;text-decoration:none;text-align:center;
}
.ung-card-grid--board .ung-card-thumb{
    display:block;flex:0 0 100px;width:100px!important;height:100px!important;
    border-radius:12px;object-fit:cover;object-position:center;background:#f7f1e7;
}
.ung-card-grid--board .ung-card-thumb-empty{
    display:flex;align-items:center;justify-content:center;
    color:#8d7b68;font-size:.72rem;font-weight:700;text-align:center;
}
.ung-card-grid--board .ung-card-body{
    width:100%;padding:0!important;display:flex;flex-direction:column;align-items:center;gap:8px;flex:0 1 auto;
}
.ung-card-grid--board .ung-card-title{
    width:100%;min-width:0;margin:0;font-size:.98rem;line-height:1.5;color:#332a23;font-weight:800;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:keep-all;
}
.ung-card-grid--board .ung-card-badges{justify-content:center}
.ung-card-grid--board .ung-card-excerpt,.ung-card-grid--board .ung-card-meta{display:none!important}
@media(max-width:760px){.ung-card-grid--board{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){
    .ung-card-grid--board{grid-template-columns:1fr}
    .ung-card-grid--board .ung-post-card{min-height:0}
    .ung-card-grid--board .ung-post-card-link{flex-direction:row;align-items:center;text-align:left;padding:12px}
    .ung-card-grid--board .ung-card-body{width:auto;min-width:0;flex:1 1 auto;align-items:flex-start}
    .ung-card-grid--board .ung-card-title{text-align:left}
    .ung-card-grid--board .ung-card-badges{justify-content:flex-start}
}

/* v1.5.59: 홈 공지 배지도 게시판과 동일한 차분한 빨강으로 통일 */
.page-home .home-notice-label{background:#C94A45!important;color:#fff!important}


/* ============================================================
   v1.5.76 게시판 카드 내부 정보형 정돈
   - 카드 외곽/3열 구조는 그대로 유지
   - 목록이미지는 108px로 소폭 확대
   - 제목을 왼쪽 정렬하고 굵기를 한 단계 낮춤
   - 날짜·조회수를 작은 보조정보로 표시
   - 모바일에서도 기존 1열 가로형 흐름 유지
   ============================================================ */
.ung-card-grid--board .ung-post-card-link{
    align-items:stretch!important;
    gap:11px!important;
    padding:16px 14px 14px!important;
    text-align:left!important;
}
.ung-card-grid--board .ung-card-thumb{
    flex:0 0 108px!important;
    width:108px!important;
    height:108px!important;
    margin:0 auto!important;
}
.ung-card-grid--board .ung-card-body{
    width:100%!important;
    align-items:flex-start!important;
    gap:6px!important;
}
.ung-card-grid--board .ung-card-title{
    text-align:left!important;
    font-size:.96rem!important;
    line-height:1.5!important;
    font-weight:700!important;
    color:#302b27!important;
    min-height:3em;
}
.ung-card-grid--board .ung-card-badges{
    justify-content:flex-start!important;
}
.ung-card-grid--board .ung-card-meta{
    display:flex!important;
    align-items:center;
    justify-content:flex-start!important;
    gap:8px;
    width:100%;
    margin:1px 0 0!important;
    color:#8b8178!important;
    font-size:.74rem!important;
    line-height:1.4;
    font-weight:500;
}
.ung-card-grid--board .ung-card-meta span + span::before{
    content:'·';
    margin-right:8px;
    color:#b2aaa2;
}
.ung-card-grid--board .ung-card-excerpt{display:none!important}
@media(max-width:520px){
    .ung-card-grid--board .ung-post-card-link{
        align-items:center!important;
        gap:12px!important;
        padding:12px!important;
    }
    .ung-card-grid--board .ung-card-thumb{
        flex:0 0 96px!important;
        width:96px!important;
        height:96px!important;
        margin:0!important;
    }
    .ung-card-grid--board .ung-card-title{
        min-height:0;
        font-size:.95rem!important;
    }
}

/* ============================================================
   v1.5.77 게시판 카드 모서리 정돈
   - 카드 구조/크기/3열 배열은 유지
   - 외곽 모서리를 16px -> 4px로 축소해 정보형 느낌 강화
   - 썸네일 모서리도 12px -> 6px로 완화
   ============================================================ */
.ung-card-grid--board .ung-post-card{
    border-radius:4px!important;
}
.ung-card-grid--board .ung-card-thumb{
    border-radius:6px!important;
}


/* ============================================================
   v1.5.78 게시판 썸네일 둥근 모서리 완전 제거
   - 카드 외곽 4px는 유지
   - 목록 썸네일/빈 썸네일의 둥근 모서리를 0으로 맞춤
   ============================================================ */
.ung-card-grid--board .ung-card-thumb,
.ung-card-grid--board .ung-card-thumb-empty{
    border-radius:0!important;
}


/* ============================================================
   v1.5.79 게시판별 포인트 색상
   전체 배경·카드는 동일하게 유지하고 제목·구분선·글쓰기 버튼만 차분하게 구분합니다.
   ============================================================ */
.ung-board-wrap.theme-info{--board-accent:#315D48;--board-soft:#A8BDAF}
.ung-board-wrap.theme-talk{--board-accent:#7A4A2B;--board-soft:#C7A58D}
.ung-board-wrap.theme-legal{--board-accent:#334E6F;--board-soft:#A6B4C4}
.ung-board-wrap.theme-series{--board-accent:#6E4A55;--board-soft:#B9A6AC}
.ung-board-wrap.theme-free{--board-accent:#536B5E;--board-soft:#A8B5AD}

.ung-board-wrap[class*="theme-"] .ung-board-head{
    border-bottom-color:var(--board-accent, #315D48)!important;
}
.ung-board-wrap[class*="theme-"] .ung-board-head h1{
    color:var(--board-accent, #315D48)!important;
}
.ung-board-wrap[class*="theme-"] .ung-write-link{
    background:var(--board-accent, #315D48)!important;
    color:#fff!important;
    border-color:var(--board-accent, #315D48)!important;
}
.ung-board-wrap[class*="theme-"] .ung-write-link:hover,
.ung-board-wrap[class*="theme-"] .ung-write-link:focus-visible{
    filter:brightness(.92);
}

/* 게시글 안에서는 제목 자체는 검정 계열을 유지하고 게시판명과 구분선만 테마색을 사용합니다. */
.article.theme-info{--board-accent:#315D48}
.article.theme-talk{--board-accent:#7A4A2B}
.article.theme-legal{--board-accent:#334E6F}
.article.theme-series{--board-accent:#6E4A55}
.article.theme-free{--board-accent:#536B5E}
.article[class*="theme-"] .article-head{border-bottom-color:var(--board-accent, var(--brown))}
.article[class*="theme-"] .article-head > .post-meta:first-child a{
    color:var(--board-accent, inherit);
    font-weight:700;
}


/* ============================================================
   v1.5.82 게시판 제목색 계열에 맞춘 카드 테두리 색상
   - 카드 배경은 그대로 유지
   - 카드 테두리만 게시판별 포인트색의 연한 색으로 통일
   ============================================================ */
.ung-board-wrap.theme-info .ung-card-grid--board .ung-post-card{
    border-color:#D3DED6!important;
}
.ung-board-wrap.theme-info .ung-card-grid--board .ung-post-card:hover{
    border-color:#A7BEAF!important;
}

.ung-board-wrap.theme-talk .ung-card-grid--board .ung-post-card{
    border-color:#E3D1C2!important;
}
.ung-board-wrap.theme-talk .ung-card-grid--board .ung-post-card:hover{
    border-color:#CBAA92!important;
}

.ung-board-wrap.theme-legal .ung-card-grid--board .ung-post-card{
    border-color:#D4DEE8!important;
}
.ung-board-wrap.theme-legal .ung-card-grid--board .ung-post-card:hover{
    border-color:#AABBCD!important;
}

.ung-board-wrap.theme-series .ung-card-grid--board .ung-post-card{
    border-color:#DDD3D7!important;
}
.ung-board-wrap.theme-series .ung-card-grid--board .ung-post-card:hover{
    border-color:#BDAAB1!important;
}

.ung-board-wrap.theme-free .ung-card-grid--board .ung-post-card{
    border-color:#D5DDD8!important;
}
.ung-board-wrap.theme-free .ung-card-grid--board .ung-post-card:hover{
    border-color:#AEBBB4!important;
}
