@charset "utf-8";
/* ══════════════════════════════════════════════════════════════════════
   excelnet — 엑셀.net 테마 스타일 (반응형 단일 파일)
   ─────────────────────────────────────────────────────────────────────
   [구성] 1 토큰 · 2 레이아웃 · 3 상단바 · 4 게시판 머리말 · 5 목록(F)
          6 첫화면 · 7 사이드바/푸터 · 8 그누보드 기본요소 손질 · 9 반응형
   [색을 바꾸려면] 아래 :root 의 변수만 고치면 사이트 전체가 따라갑니다.
   [모바일] 별도 모바일 파일 없음. 이 파일 하나가 폭에 따라 접힙니다.
            분기점 : 1100px(사이드바 내려감) · 760px(상단바 접힘) · 520px(한 칸)
   ══════════════════════════════════════════════════════════════════════ */

/* ── 1. 토큰 ───────────────────────────────────────────────────────── */
:root{
  --brand:#00A495;          /* 상단 초록 띠·강조 */
  --brand-dark:#00776d;
  --brand-soft:#e9f7f5;
  --ink:#1f2937;            /* 본문 글자 */
  --ink-2:#475467;          /* 보조 글자 */
  --ink-3:#98a2b3;          /* 흐린 글자 */
  --line:#e6ebf1;           /* 테두리 */
  --line-2:#f1f4f8;         /* 옅은 구분선 */
  --bg:#f4f6f8;             /* 페이지 바탕 */
  --card:#ffffff;
  --radius:14px;
  --radius-sm:8px;
  --shadow:0 1px 2px rgba(16,24,40,.04);
  --shell:1180px;           /* 본문 최대 폭 */
  --gap:24px;
  /* 말머리 색 — 게시판 분류(카테고리)에 순서대로 물립니다 */
  --cat-1:#E07A1F;  --cat-2:#00A495;  --cat-3:#1D6FD4;
  --cat-4:#7C5CD6;  --cat-5:#0E9F6E;  --cat-6:#D6455C;
}

html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
/* 글꼴 — 굵기는 400(본문) / 500(약한 강조) / 700(제목)만 씁니다.
   맑은 고딕처럼 굵기가 두 단계뿐인 글꼴에서 800·900을 쓰면 과하게 두꺼워지고
   글자끼리 붙어 보여 시인성이 떨어집니다.
   ─────────────────────────────────────────────────────────────────────
   [글꼴] 사이트 전체 글꼴은 아래 --font 한 줄로 정합니다.
   글꼴 파일은 head.sub.php 가 불러옵니다(그 파일의 '글꼴' 주석 참고).
   바꾸고 싶으면 --font 의 맨 앞 이름만 갈아 끼우세요. 다른 후보 —
     본고딕      : "Noto Sans KR"
     IBM Plex   : "IBM Plex Sans KR"
     Gothic A1  : "Gothic A1"
     나눔고딕     : "Nanum Gothic"
   (그 글꼴을 head.sub.php 에서 불러오도록 링크도 같이 바꿔야 합니다)
   외부망이 막힌 곳에서는 글꼴을 못 받아 뒤쪽 맑은 고딕으로 자연히 내려갑니다 —
   지금과 같은 모습이 되므로 깨지지 않습니다.                                */
:root{
  --font:"Pretendard Variable",Pretendard,"Apple SD Gothic Neo","Noto Sans KR",
         "Malgun Gothic",-apple-system,BlinkMacSystemFont,sans-serif;
}
body{margin:0;background:var(--bg);color:var(--ink);
  font-family:var(--font);
  font-weight:400;letter-spacing:-.1px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
/* 그누보드 기본 css 가 맑은 고딕을 직접 박아두는 자리들을 테마 글꼴로 되돌립니다 */
#hd,#container_wr,#ft,#aside,.forum-container,
#hd input,#hd button,#container_wr input,#container_wr button,#container_wr select,
#container_wr textarea,.forum-container input,.forum-container button,
.forum-container select,.forum-container textarea{font-family:var(--font);}
a{color:var(--brand-dark);text-decoration:none;}
a:hover{color:var(--brand);}
img{max-width:100%;}

/* ── 2. 레이아웃 ───────────────────────────────────────────────────── */
/* box-sizing 을 꼭 붙입니다 — 안쪽 여백이 있는 줄(푸터 등)이 화면보다 넓어지는 것을 막습니다 */
.forum-shell{box-sizing:border-box;width:min(var(--shell),calc(100% - 32px));margin:0 auto;}
/* 그누보드 default.css 가 #container_wr 등에 1200px 고정폭을 주므로 아이디로 이겨야 합니다 */
#hd.forum-hd .forum-shell,#container_wr.forum-shell,#ft.forum-ft .forum-shell{
  width:min(var(--shell),calc(100% - 32px))!important;max-width:var(--shell);min-width:0;}
#container_wr{width:auto;}
.forum-wrapper{padding:20px 0 36px;}
.forum-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:var(--gap);}
.forum-container{min-width:0;background:transparent;}
/* 그누보드 기본 default.css 의 고정폭·float 해제 */
#hd.forum-hd,#wrapper.forum-wrapper,#ft.forum-ft{min-width:0!important;width:100%!important;}
#container.forum-container,#aside.forum-aside{float:none!important;min-width:0!important;margin:0!important;width:auto!important;}
#container_wr:after{display:none;}
#container{position:static;min-height:0;padding:0;}
.lt_wr,.latest_wr,.latest_top_wr{width:auto!important;margin:0!important;float:none!important;}

/* ── 3. 상단바 (초록 띠 + 메뉴줄) ─────────────────────────────────── */
#hd.forum-hd,.forum-hd{position:sticky;top:0;z-index:50;background:var(--brand);border-bottom:0;color:#fff;}
/* 초록 띠 안의 글자·아이콘은 흰색. 아래 메뉴줄(.forum-nav)은 흰 바탕이라 따로 지정합니다.
   ※ 그누보드 default.css 의 `a{color:#000}` 보다 세야 해서 아이디까지 붙였습니다. */
#hd.forum-hd .forum-topbar,
#hd.forum-hd .forum-topbar a,
#hd.forum-hd .forum-topbar button{color:#fff;}
.forum-topbar__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,430px) minmax(0,1fr);
  gap:16px;align-items:center;min-height:48px;padding:0;}
.forum-brand{display:inline-flex;align-items:center;gap:10px;min-width:0;justify-self:start;
  color:#fff;transition:color .15s;}
.forum-brand__mark{display:grid;place-items:center;width:28px;height:28px;color:inherit;}
.forum-brand__mark svg{display:block;width:28px;height:28px;}
.forum-brand strong{display:block;font-size:18.5px;font-weight:700;letter-spacing:-.4px;line-height:1.15;color:inherit;}
.forum-brand:hover{color:#c9fff6;}
.forum-search{display:flex;align-items:center;min-width:0;overflow:hidden;
  border:1px solid rgba(255,255,255,.5);border-radius:50px;background:#fff;
  box-shadow:0 1px 3px rgba(0,45,41,.18);transition:border-color .2s,box-shadow .2s;}
.forum-search:focus-within{border-color:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.45);}
.forum-search input{width:100%;height:32px;padding:0 4px 0 16px;border:0;outline:0;background:transparent;font-size:13.5px;}
.forum-search button.forum-search__btn{display:grid;place-items:center;width:40px;height:32px;padding:0;
  border:0;background:none;color:var(--brand);cursor:pointer;transition:color .15s;}
.forum-search button.forum-search__btn svg{width:18px;height:18px;}
.forum-search button.forum-search__btn:hover{color:var(--brand-dark);}
.forum-account{display:flex;align-items:center;justify-content:flex-end;gap:2px;justify-self:end;
  margin:0;padding:0;list-style:none;}
.forum-account a{display:inline-flex;align-items:center;min-height:30px;padding:0 9px;white-space:nowrap;
  border:0;border-radius:var(--radius-sm);background:none;color:#fff;font-size:13px;font-weight:500;
  transition:background .13s,color .13s;}
.forum-account a:hover{background:rgba(255,255,255,.17);color:#fff;}
.forum-account__site{margin-right:6px;padding-right:10px;border-right:1px solid rgba(255,255,255,.3);}
.forum-account .forum-ck{display:inline-flex;align-items:center;gap:6px;font-weight:500;}
.forum-account .forum-ck svg{flex:0 0 18px;width:18px;height:18px;}
.forum-account .forum-join,.forum-account .forum-admin{background:rgba(255,255,255,.2);color:#fff!important;}
.forum-account .forum-join:hover,.forum-account .forum-admin:hover{background:#fff;color:#00857a!important;}

.forum-nav{background:#fff;box-shadow:0 1px 4px rgba(15,23,42,.07);}
.forum-nav__inner{display:flex;gap:6px;align-items:center;padding:9px 0;}
.forum-menu{display:flex;flex-wrap:wrap;gap:6px;align-items:center;width:100%;margin:0;padding:0;list-style:none;}
.forum-menu__item{position:relative;}
.forum-nav a,.forum-menu__link{flex:0 0 auto;padding:8px 12px;border-radius:var(--radius-sm);
  color:var(--ink-2);font-size:13px;font-weight:500;white-space:nowrap;}
.forum-menu__item.has-sub > .forum-menu__link{padding-right:26px;}
.forum-menu__item.has-sub > .forum-menu__link:after{content:"";position:absolute;top:50%;right:11px;
  width:7px;height:7px;border-right:2px solid var(--ink-3);border-bottom:2px solid var(--ink-3);
  transform:translateY(-65%) rotate(45deg);}
.forum-nav a:hover,.forum-menu__item:focus-within > .forum-menu__link{background:#f0f4f8;color:var(--ink);}
.forum-menu__item.is-on > .forum-menu__link{background:var(--brand-soft);color:var(--brand-dark);}
.forum-menu__sub{display:none;position:absolute;top:calc(100% + 8px);left:0;z-index:60;min-width:180px;
  padding:8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;
  box-shadow:0 18px 42px rgba(16,24,40,.14);}
.forum-menu__item:hover > .forum-menu__sub,.forum-menu__item:focus-within > .forum-menu__sub{display:block;}
.forum-menu__sub a{display:block;padding:9px 10px;color:var(--ink-2);white-space:nowrap;}
.forum-menu__sub a:hover{background:var(--brand-soft);color:var(--brand);}
.forum-menu__empty{padding:8px 12px;color:#667085;font-size:13px;}
/* 좁은 화면 전용 버튼 — 넓은 화면에서는 숨김 */
.forum-mwiki,.forum-quick,.forum-pop,.forum-textsize,.forum-back,.forum-account--sheet{display:none;}
.forum-burger,.forum-searchbtn{display:none;place-items:center;width:38px;height:38px;padding:0;
  border:0;border-radius:10px;background:none;color:#fff;cursor:pointer;}
.forum-burger svg,.forum-searchbtn svg{width:22px;height:22px;}
.forum-burger:active,.forum-searchbtn:active{background:rgba(255,255,255,.22);}

/* ── 4. 게시판 머리말 (모든 게시판 공통) ──────────────────────────────
   머리말은 게시판 상자의 '지붕'입니다. 아래 목록 상자와 테두리가 이어져
   하나의 판처럼 보이도록, 바로 뒤에 게시판 상자가 오면 아래 테두리를 지웁니다.
   (:has 를 모르는 옛 브라우저에서는 두 개의 단정한 카드로 보입니다)          */
.forum-board-head{display:flex;align-items:center;justify-content:space-between;gap:14px;
  margin:0 0 12px;padding:16px 20px;border:1px solid var(--line);border-radius:var(--radius);
  background:var(--card);box-shadow:var(--shadow);}
.forum-board-head__l{display:flex;align-items:center;gap:12px;min-width:0;}
.forum-board-head__ico{flex:0 0 40px;width:40px;height:40px;display:grid;place-items:center;
  border-radius:10px;background:rgba(0,164,149,.10);color:var(--brand);}
.forum-board-head__ico svg{display:block;width:22px;height:22px;}
.forum-board-head__txt{min-width:0;}
.forum-board-head__title{margin:0;font-size:20px;font-weight:700;line-height:1.2;color:var(--ink);}
.forum-board-head__sub{margin:2px 0 0;font-size:13px;line-height:1.45;color:#6b7280;}
.forum-board-head__r{display:flex;align-items:center;gap:10px;flex:0 0 auto;}
.forum-board-head__total{font-size:13px;color:#6b7280;white-space:nowrap;}
.forum-board-head__total strong{color:var(--brand);font-weight:600;}
.forum-board-head__admin{display:inline-flex;align-items:center;padding:6px 10px;border:1px solid #e5e7eb;
  border-radius:var(--radius-sm);background:#fff;color:#374151;font-size:13px;white-space:nowrap;}
.forum-board-head__admin:hover{background:#f9fafb;}

/* ── 4-1. 게시판 머리말과 본문 상자 — 둘 다 네 모서리가 둥근 카드 ─────
   예전에는 두 상자의 테두리를 붙여 한 판처럼 보이게 했었습니다.
   그러려면 머리말 아래쪽 모서리를 각지게 깎아야 했는데, 브라우저에 따라
   한쪽만 적용되어 '각진 상자'가 생기는 일이 있었습니다.
   지금은 **둘 다 온전히 둥근 카드**로 두고, 사이를 12px 만 띄웁니다.
   각지는 곳이 아예 생기지 않고, 안쪽 여백(--pad)이 같아 한 묶음으로 읽힙니다. */
.forum-container #bo_list,
.forum-container #bo_gall,
.forum-container #bo_v,
.forum-container #bo_w{margin-top:0;}

/* ── 5. 목록 공통 — 도구 줄 · 필터 줄 (게시판 상자 안의 '띠') ───────
   도구 줄과 필터 줄은 더 이상 따로 뜬 상자가 아닙니다. 게시판 상자 안에서
   좌우 여백을 맞추고 가는 구분선으로만 나눕니다.                          */
.forum-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;
  margin:0;padding:12px var(--pad,18px);border-bottom:1px solid var(--line-2);}
.forum-chips{display:flex;flex-wrap:wrap;gap:6px;min-width:0;}
.forum-chip{display:inline-flex;align-items:center;height:30px;padding:0 13px;border-radius:999px;
  border:1px solid var(--line);background:#fff;color:#667085;font-size:12.5px;font-weight:500;white-space:nowrap;}
.forum-chip.is-on{background:#172033;border-color:#172033;color:#fff;font-weight:600;}
.forum-btn-write{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 14px;
  border:0;border-radius:999px;background:var(--brand);color:#fff!important;font-size:12.5px;font-weight:700;white-space:nowrap;}
.forum-btn-write:hover{background:var(--brand-dark);}
.forum-btn-write svg{width:14px;height:14px;}

/* ── 목록 필터 줄 (분류 · 만든이 · 정렬) ──────────────────────────── */
.fb{display:flex;flex-direction:column;gap:7px;margin:0;padding:11px var(--pad,18px);
  border:0;border-bottom:1px solid var(--line-2);border-radius:0;background:#fafbfc;box-shadow:none;}
.fb-row{display:flex;align-items:flex-start;gap:12px;min-width:0;}
.fb-key{flex:0 0 44px;padding-top:6px;font-size:11.5px;font-weight:600;letter-spacing:.02em;color:var(--ink-3);}
.fb-chips{display:flex;flex-wrap:wrap;gap:6px;min-width:0;}
.fb-chip{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 11px;border-radius:999px;
  border:1px solid var(--line);background:#fff;color:var(--ink-2);font-size:12.5px;font-weight:500;
  white-space:nowrap;transition:border-color .14s,background .14s,color .14s;}
.fb-chip b{font-size:11px;font-weight:600;color:var(--ink-3);}
.fb-chip:hover{border-color:color-mix(in srgb,var(--brand) 45%,#fff);background:var(--brand-soft);color:var(--brand-dark);}
.fb-chip.is-on{background:#172033;border-color:#172033;color:#fff;}
.fb-chip.is-on b{color:rgba(255,255,255,.66);}
.fb-row--sort{align-items:center;padding-top:5px;border-top:1px solid #eaeef3;}
.fb-sort{position:relative;padding:4px 2px;font-size:12.5px;font-weight:500;color:var(--ink-3);}
.fb-sort + .fb-sort{margin-left:14px;}
.fb-sort + .fb-sort::before{content:"";position:absolute;left:-8px;top:50%;margin-top:-5px;
  width:1px;height:10px;background:var(--line);}
.fb-sort:hover{color:var(--ink-2);}
.fb-sort.is-on{color:var(--brand-dark);}
.fb-sort.is-on::after{content:"";position:absolute;left:2px;right:2px;bottom:0;height:2px;
  border-radius:2px;background:var(--brand);}
.fb-reset{margin-left:auto;font-size:12px;font-weight:500;color:var(--ink-3);}
.fb-reset:hover{color:#c0455c;}
@media (max-width:760px){
  .fb{padding:10px 14px;gap:9px;}
  /* 세로로 접을 때 align-items:flex-start 가 남으면 칩 줄이 화면보다 넓어집니다 */
  .fb-row{flex-direction:column;align-items:stretch;gap:6px;}
  .fb-key{flex:none;padding-top:0;}
  .fb-chips{width:100%;max-width:100%;flex-wrap:nowrap;overflow-x:auto;
    -webkit-overflow-scrolling:touch;padding-bottom:2px;}
  .fb-row--sort{flex-direction:row;align-items:center;}
}

/* ── 6. 첫 화면 ────────────────────────────────────────────────────── */
/* 히어로 — 흰 카드. 초록은 상단 띠와 강조 요소에만 씁니다(면적을 줄여 가볍게). */
/* 히어로 톤 — 색을 바꾸려면 아래 두 변수만 고치면 됩니다.
   민트(기본) : --hero-a:#e3f5f1  --hero-b:#ffffff
   푸른색     : --hero-a:#e6eefc  --hero-b:#ffffff  (::before/::after 색도 파랑으로)                       */
.forum-hero{--hero-a:#e3f5f1;--hero-b:#ffffff;
  position:relative;overflow:hidden;
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:center;
  margin:0 0 18px;padding:22px 26px;border:1px solid var(--line);border-radius:14px;
  background:linear-gradient(112deg,var(--hero-a) 0%,var(--hero-b) 62%);
  box-shadow:var(--shadow);}
/* (오른쪽 위 격자무늬는 뺐습니다 — 배경만 어수선해 보여서) */
/* 왼쪽 아래 아주 옅은 빛 번짐 */
.forum-hero::after{content:"";position:absolute;left:-60px;bottom:-90px;width:260px;height:260px;
  border-radius:50%;background:radial-gradient(circle,rgba(0,164,149,.16),transparent 65%);
  pointer-events:none;}
.forum-hero > *{position:relative;z-index:1;}
.forum-kicker{margin:0 0 7px;font-size:10.5px;font-weight:700;letter-spacing:.11em;color:var(--brand);}
.forum-hero h2{margin:0 0 7px;font-size:clamp(20px,2.1vw,25px);font-weight:700;line-height:1.25;
  letter-spacing:-.6px;color:var(--ink);}
.forum-hero__copy > p{max-width:600px;margin:0;font-size:13px;line-height:1.6;color:#6b7280;}
.forum-hero__actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;}
.forum-primary-btn,.forum-secondary-btn{display:inline-flex;align-items:center;height:34px;
  padding:0 14px;border-radius:9px;font-size:12.5px;font-weight:700;transition:background .15s,border-color .15s;}
.forum-primary-btn{background:var(--brand);color:#fff!important;}
.forum-primary-btn:hover{background:var(--brand-dark);}
.forum-secondary-btn{border:1px solid var(--line);background:#fff;color:var(--ink-2)!important;}
.forum-secondary-btn:hover{border-color:var(--brand);color:var(--brand-dark)!important;}
/* 숫자 — 상자 대신 얇은 세로선으로 구분 */
.forum-hero__panel{display:flex;align-items:center;gap:0;padding:0;border:0;background:none;}
.forum-hero__panel dl{margin:0;padding:0 18px;border-left:1px solid var(--line);text-align:center;}
.forum-hero__panel dl:first-child{border-left:0;}
.forum-hero__panel dt{font-size:11.5px;font-weight:500;color:var(--ink-3);}
.forum-hero__panel dd{margin:4px 0 0;font-size:23px;font-weight:700;line-height:1;
  letter-spacing:-.5px;color:var(--ink);font-variant-numeric:tabular-nums;}
.forum-hero__panel dl:first-child dd{color:var(--brand);}

.forum-board-section,.forum-latest-section{margin-top:22px;}
.forum-section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:12px;}
.forum-section-head h2{margin:0;font-size:19px;font-weight:700;color:#172033;}
.forum-section-head p{max-width:560px;margin:0;font-size:12.5px;color:#8b95a3;line-height:1.6;}
.forum-board-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.forum-board-card{display:flex;flex-direction:column;padding:18px;border:1px solid var(--line);
  border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);color:var(--ink);}
.forum-board-card:hover{border-color:var(--c,var(--brand));box-shadow:0 10px 26px rgba(16,24,40,.08);color:var(--ink);}
.forum-board-card__icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:14px;
  border-radius:12px;background:color-mix(in srgb,var(--c,var(--brand)) 12%,#fff);color:var(--c,var(--brand));}
.forum-board-card__icon svg{width:23px;height:23px;}
.forum-board-card strong{display:block;font-size:16px;font-weight:700;}
.forum-board-card p{min-height:38px;margin:6px 0 14px;font-size:12.5px;color:#667085;line-height:1.5;}
.forum-board-card em{display:block;font-style:normal;font-size:11.5px;font-weight:600;color:var(--c,var(--brand));}
.forum-empty{padding:24px;border:1px dashed #b9c4d0;border-radius:var(--radius);background:#fff;}
.forum-empty strong{display:block;margin-bottom:8px;}
.forum-latest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.forum-latest-card{position:relative;overflow:hidden;padding:4px;border:1px solid var(--line);
  border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);
  transition:transform .18s,box-shadow .18s,border-color .18s;}
/* (카드 윗변 색 띠는 뺐습니다 — 카드가 여러 장 놓이니 색줄이 어수선해 보여서.
    게시판 구분은 왼쪽 아이콘 색이 이미 하고 있습니다) */
.forum-latest-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--c,var(--brand)) 45%,#fff);
  box-shadow:0 12px 26px rgba(16,24,40,.10);}
/* 최근글 카드 머리 — 아이콘·게시판명·글/댓글 수·전체보기 */
.forum-latest-basic__icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;
  border-radius:10px;background:color-mix(in srgb,var(--c,var(--brand)) 11%,#fff)!important;
  color:var(--c,var(--brand));box-shadow:none!important;}
.forum-latest-basic__icon svg{width:19px;height:19px;}
.forum-latest-basic .forum-latest-basic__head{display:flex;align-items:center;gap:9px;flex-wrap:nowrap;}
.forum-latest-basic .lat_title{flex:1 1 auto;min-width:5.5em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.forum-latest-basic .lt_more{flex:0 0 auto;white-space:nowrap;}
.forum-latest-basic__cnt{flex:0 0 auto;font-size:11.5px;color:var(--ink-3);white-space:nowrap;}
/* 좁은 사이드바 카드에서는 글·댓글 수를 빼서 '전체보기'가 잘리지 않게 */
.forum-side-card .forum-latest-basic__cnt{display:none;}
.forum-latest-basic__cnt strong{color:var(--c,var(--brand));font-weight:600;}
@media (max-width:560px){
  /* 좁으면 글·댓글 수를 아랫줄로 내려 게시판 이름이 눌리지 않게 */
  .forum-latest-basic .forum-latest-basic__head{flex-wrap:wrap;}
  .forum-latest-basic__cnt{flex-basis:100%;order:9;margin-top:-2px;}
}

/* 프로그램 아이콘 스트립 — 첫 화면에서 도구가 많다는 걸 한눈에 보여줍니다 */
.forum-strip{margin:0 0 18px;padding:14px 18px 16px;border:1px solid var(--line);
  border-radius:14px;background:var(--card);box-shadow:var(--shadow);}
.forum-strip__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px;}
.forum-strip__label{margin:0;font-size:11px;font-weight:700;letter-spacing:.09em;color:var(--brand);}
.forum-strip__more{font-size:12px;font-weight:500;color:var(--ink-3);}
.forum-strip__more:hover{color:var(--brand-dark);}
.forum-strip__rail{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:11px;}
.forum-strip__item{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;
  color:var(--ink-2);transition:transform .16s;}
/* 아이콘 그림자 — 그림의 실제 모양을 따라 그려집니다(프로그램/배포 목록과 같은 방식).
   세기는 아래 rgba 의 마지막 숫자로 조절합니다. */
.forum-strip__item{position:relative;
  filter:drop-shadow(0 2px 4px rgba(16,24,40,.06)) drop-shadow(0 7px 12px rgba(16,24,40,.05));
  transition:transform .16s,filter .2s;}
.forum-strip__item:hover{filter:drop-shadow(0 4px 7px rgba(16,24,40,.10)) drop-shadow(0 10px 16px rgba(16,24,40,.09));}
.forum-strip__item img{display:block;width:100%;aspect-ratio:1/1;object-fit:contain;
  border-radius:22%;}

.forum-strip__item span{width:100%;font-size:10.5px;line-height:1.3;text-align:center;color:var(--ink-3);
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.forum-strip__item:hover{transform:translateY(-3px);color:var(--brand-dark);}
.forum-strip__item:hover span{color:var(--brand-dark);}

/* ── 7. 사이드바 · 푸터 ────────────────────────────────────────────── */
.forum-aside{display:flex;flex-direction:column;gap:14px;}
.forum-side-card{padding:16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);}
.forum-side-card h2{margin:0 0 12px;font-size:15px;font-weight:700;color:#172033;}
.forum-side-card--login,.forum-side-card--counter{padding:0;border:0;background:transparent;}
.forum-side-card--notice{padding:0;overflow:hidden;}
.forum-side-card--counter > h2{margin:0 0 10px;}
.forum-counter-metric{display:flex;align-items:center;justify-content:space-between;
  padding:12px 16px;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);}
.forum-counter-metric span{color:#667085;font-size:13px;}
.forum-counter-metric strong{font-size:15px;font-weight:700;color:var(--brand);}
.forum-side-card--login,.forum-login-panel,.forum-login-panel form,.forum-login-panel input,
.forum-login-panel button,.forum-login-panel a{max-width:100%;}
.forum-login-panel #ol_id,.forum-login-panel #ol_pw,.forum-login-panel #ol_submit{width:100%!important;min-width:0;}
.forum-login-panel #ol_submit{color:#fff!important;text-align:center;}

.forum-ft{border-top:1px solid var(--line);background:#fff;}
.forum-ft__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 0;text-align:left;}
#ft.forum-ft{text-align:left;}
.forum-ft__brand{margin:0;font-size:18px;font-weight:700;letter-spacing:-.3px;}
.forum-ft__desc{margin:6px 0 0;color:#667085;}
.forum-ft__links{display:flex;flex-wrap:wrap;gap:12px;}
.forum-ft__links a{font-weight:500;}
#top_btn.forum-top-btn,.forum-top-btn{position:fixed;right:18px;bottom:18px;display:grid;place-items:center;width:48px;height:48px;
  border:2px solid #0b3b36;border-radius:12px;background:var(--brand);color:#fff;cursor:pointer;z-index:900;
  box-shadow:0 14px 32px rgba(15,118,110,.28),0 0 0 4px rgba(255,255,255,.72);}
#top_btn.forum-top-btn:hover,#top_btn.forum-top-btn:focus{border-color:#172033;background:#172033;outline:0;}
.forum-top-btn__icon{display:none;}
.forum-top-btn__svg{display:block;}
/* 엑셀.net board skins — 게시판 상자(판). 안쪽 여백은 --pad 하나로 맞춥니다 */
.forum-container #bo_list,
.forum-container #bo_gall,
.forum-container #bo_v,
.forum-container #bo_w {
    --pad: 18px;
    display: flow-root;          /* 안쪽 float 이 밖으로 새지 않도록 */
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: #fff;
    color: #172033;
    box-shadow: var(--shadow);
}
.forum-container #bo_list,
.forum-container #bo_gall,
.forum-container #bo_v,
.forum-container #bo_w,
.forum-container #bo_list *,
.forum-container #bo_gall *,
.forum-container #bo_v *,
.forum-container #bo_w * {
    letter-spacing: 0;
}
.forum-container #bo_list_total {
    color: #667085;
    font-weight:700;
}
.forum-container #bo_btn_top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 0 !important;
    padding: 12px var(--pad, 18px);
    border-bottom: 1px solid var(--line-2);
}
.forum-container .btn_bo_user {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin: 0;
    padding: 0;
}
.forum-container .btn_bo_user li {
    float: none;
    width: auto;
    margin: 0;
    background: transparent;
}
.forum-container .btn_bo_user .btn,
.forum-container .bo_sch .sch_btn,
.forum-container .bo_sch_cls,
.forum-container .btn_cm_opt {
    display: inline-grid !important;
    width: 38px;
    min-width: 38px;
    height: 38px !important;
    padding: 0 !important;
    place-items: center;
    border: 1px solid #d6dfe9 !important;
    border-radius: 8px !important;
    background: #f8fafc !important;
    color: #172033 !important;
    line-height: 1 !important;
}
.forum-container .btn_bo_user .btn:hover,
.forum-container .bo_sch .sch_btn:hover,
.forum-container .bo_sch_cls:hover,
.forum-container .btn_cm_opt:hover {
    border-color: #00A495 !important;
    background-color: #e6f8f5 !important;
}
.forum-container .fa {
    letter-spacing: 0;
}
.forum-container .btn_bo_user .btn i,
.forum-container .bo_sch .sch_btn i,
.forum-container .bo_sch_cls i,
.forum-container .btn_cm_opt i,
.forum-container #bo_v_info i,
.forum-container .gall_info i,
.forum-container #bo_v_file i,
.forum-container #bo_v_link i,
.forum-container .lb_icon i,
.forum-container #bo_v_act i,
.forum-container #bo_v_nb i {
    display: inline-block;
    width: 18px;
    height: 18px;
    overflow: hidden;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 18px !important;
    vertical-align: middle;
}
.forum-container .fa-search { background-image: url("../img/forum/search.svg"); }
.forum-container .fa-times { background-image: url("../img/forum/close.svg"); }
.forum-container .fa-pencil { background-image: url("../img/forum/write.svg"); }
.forum-container .fa-pencil-square-o { background-image: url("../img/forum/edit.svg"); }
.forum-container .fa-list { background-image: url("../img/forum/list.svg"); }
.forum-container .fa-reply { background-image: url("../img/forum/reply.svg"); }
.forum-container .fa-ellipsis-v { background-image: url("../img/forum/more.svg"); }
.forum-container .fa-rss { background-image: url("../img/forum/rss.svg"); }
.forum-container .fa-cog { background-image: url("../img/forum/board-server.svg"); animation: none !important; }
.forum-container .fa-trash-o { background-image: url("../img/forum/delete.svg"); }
.forum-container .fa-files-o { background-image: url("../img/forum/copy.svg"); }
.forum-container .fa-arrows { background-image: url("../img/forum/move.svg"); }
.forum-container .fa-commenting-o,
.forum-container .fa-comment-o { background-image: url("../img/forum/comment.svg"); }
.forum-container .fa-eye { background-image: url("../img/forum/eye.svg"); }
.forum-container .fa-clock-o { background-image: url("../img/forum/clock.svg"); }
.forum-container .fa-folder-open,
.forum-container .fa-download { background-image: url("../img/forum/file.svg"); }
.forum-container .fa-link { background-image: url("../img/forum/link.svg"); }
.forum-container .fa-bookmark { background-image: url("../img/forum/board-archive.svg"); }
.forum-container .fa-thumbs-o-up { background-image: url("../img/forum/good.svg"); }
.forum-container .fa-thumbs-o-down { background-image: url("../img/forum/bad.svg"); }
.forum-container .fa-lock { background-image: url("../img/forum/lock.svg"); }
.forum-container .fa-chevron-up,
.forum-container .fa-caret-up { background-image: url("../img/forum/top.svg"); }
.forum-container .fa-chevron-down { background-image: url("../img/forum/top.svg"); transform: rotate(180deg); }
.forum-container .new_icon {
    display: inline-grid !important;
    width: 22px;
    height: 22px;
    overflow: hidden;
    place-items: center;
    border-radius: 999px !important;
    background: #172033 url("../img/forum/new.svg") no-repeat center / 18px 18px !important;
    color: transparent !important;
    font-size: 0 !important;
    vertical-align: middle;
}
.forum-container .cnt_cmt {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-width: 22px;
    height: 22px;
    padding: 0 7px;
    border-radius: 999px;
    background: #fff3d6;
    color: #9a5b00;
    font-weight:700;
}
.forum-container .cnt_cmt:before {
    content: "";
    width: 14px;
    height: 14px;
    background: url("../img/forum/comment.svg") no-repeat center / contain;
}
.forum-container img[src$="icon_secret.gif"],
.forum-container img[src$="icon_lock.png"] {
    content: url("../img/forum/lock.svg");
    width: 18px !important;
    height: 18px !important;
    vertical-align: middle;
}
.forum-container img[src$="icon_reply.gif"] {
    content: url("../img/forum/reply.svg");
    width: 18px !important;
    height: 18px !important;
    vertical-align: middle;
}
.forum-container img[src$="icon_file.gif"] {
    content: url("../img/forum/file.svg");
    width: 18px !important;
    height: 18px !important;
    vertical-align: middle;
}
.forum-container img[src$="icon_link.gif"] {
    content: url("../img/forum/link.svg");
    width: 18px !important;
    height: 18px !important;
    vertical-align: middle;
}
.forum-container img[src$="icon_img.gif"] {
    content: url("../img/forum/image.svg");
    width: 18px !important;
    height: 18px !important;
    vertical-align: middle;
}
.forum-container img[src$="icon_sound.gif"] {
    content: url("../img/forum/sound.svg");
    width: 18px !important;
    height: 18px !important;
    vertical-align: middle;
}
.forum-container img[src$="icon_movie.gif"] {
    content: url("../img/forum/movie.svg");
    width: 18px !important;
    height: 18px !important;
    vertical-align: middle;
}
.forum-container .profile_img {
    display: inline-grid;
    width: 24px;
    height: 24px;
    margin-right: 5px;
    overflow: hidden;
    place-items: center;
    border-radius: 8px;
    background: #172033 url("../img/forum/mark.svg") no-repeat center / cover;
    vertical-align: middle;
}
.forum-container .profile_img img {
    display: block;
    width: 24px !important;
    height: 24px !important;
    border-radius: 8px;
}
.forum-container .profile_img img[src$="no_profile.gif"] {
    opacity: 0;
}
.forum-container #bo_v_info .profile_info {
    display: inline-grid;
    width: 54px;
    height: 54px;
    overflow: hidden;
    place-items: center;
    border-radius: 14px;
    background: #172033 url("../img/forum/mark.svg") no-repeat center / cover;
}
.forum-container #bo_v_info .profile_info img[src$="no_profile.gif"] {
    opacity: 0;
}
.forum-container #bo_v_info .profile_info {
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    background: none !important;
    border-radius: 0 !important;
    vertical-align: middle;
}
.forum-container #bo_v_info .profile_info img[src$="no_profile.gif"] {
    content: url("../img/forum/mark.svg");
    width: 54px !important;
    height: 54px !important;
    border-radius: 14px !important;
    opacity: 1;
}
.forum-container .bo_sch_wrap {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 100000;
    background: rgba(23, 32, 51, .34);
}
.forum-container .bo_sch_wrap .bo_sch {
    position: absolute;
    top: 50%;
    left: 50%;
    width: min(420px, calc(100% - 28px));
    padding: 22px;
    transform: translate(-50%, -50%);
    border: 1px solid #dce4ee;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(16, 24, 40, .18);
}
.forum-container .bo_sch_wrap .bo_sch h3 {
    margin: 0 0 12px;
    color: #172033;
    font-size: 18px;
}
.forum-container .bo_sch_wrap .sch_bar {
    display: flex;
    gap: 8px;
}
.forum-container .bo_sch_wrap .sch_input {
    flex: 1;
    min-width: 0;
    height: 38px;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
}
.forum-container .bo_sch_wrap .bo_sch_cls {
    position: absolute;
    top: 12px;
    right: 12px;
}
.forum-container .tbl_head01 thead th,
.forum-container #bo_gall .gall_box {
    border-color: #e8edf3;
}
.forum-container .tbl_head01 tbody td {
    border-color: #edf1f5;
    background: #fff;
}
.forum-container .bo_tit a,
.forum-container #bo_v_title .bo_v_tit,
.forum-container #wr_subject {
    color: #172033;
    font-weight:700;
}
.forum-container .bo_cate_link,
.forum-container .bo_v_cate,
.forum-container .bo_current,
.forum-container .notice_icon {
    border-radius: 8px !important;
    background: #e6f8f5 !important;
    color: #00A495 !important;
    font-weight:700;
}
.forum-container .frm_input,
.forum-container .frm_file,
.forum-container textarea,
.forum-container select {
    border-color: #cbd5e1 !important;
    border-radius: 8px !important;
}
.forum-container .btn_submit,
.forum-container .btn_b02 {
    border-color: #172033 !important;
    border-radius: 8px !important;
    background: #172033 !important;
    color: #fff !important;
}
.forum-container .btn_cancel,
.forum-container .btn_b01,
.forum-container .btn_admin {
    border-color: #d6dfe9 !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #172033 !important;
}

/* Forum skin harmonization */
.forum-container #new_sch,
.forum-container #sch_res_detail {
    position: relative !important;
    margin: 0 0 18px !important;
    padding: 20px !important;
    border: 1px solid #dce4ee !important;
    border-radius: 8px !important;
    background: linear-gradient(135deg, rgba(15, 118, 110, .06), rgba(245, 158, 11, .08)), #fff !important;
    text-align: left !important;
}
.forum-container #new_sch:before,
.forum-container #sch_res_detail:before {
    content: "";
    display: inline-grid;
    width: 38px;
    height: 38px;
    margin-right: 10px;
    border: 1px solid #dce4ee;
    border-radius: 8px;
    background: rgba(255, 255, 255, .82) url("../img/forum/search.svg") no-repeat center / 22px 22px;
    vertical-align: middle;
}
.forum-container #new_sch form,
.forum-container #sch_res_detail form {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    max-width: calc(100% - 54px);
    vertical-align: middle;
}
.forum-container #new_sch select,
.forum-container #sch_res_detail select,
.forum-container #new_sch .frm_input,
.forum-container #sch_res_detail .frm_input {
    height: 40px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 8px !important;
    background-color: #fff !important;
    color: #172033 !important;
}
.forum-container #new_sch .btn_submit,
.forum-container #sch_res_detail .btn_submit {
    width: auto !important;
    min-width: 84px !important;
    height: 40px !important;
    border: 1px solid #172033 !important;
    border-radius: 8px !important;
    background: #172033 !important;
    color: #fff !important;
    font-weight:700 !important;
}
.forum-container #new_sch p {
    flex-basis: 100%;
    padding: 8px 0 0 !important;
    color: #667085 !important;
    font-size: 12px !important;
    letter-spacing: 0 !important;
    text-align: left !important;
}
.forum-container .switch_field {
    display: inline-flex !important;
    overflow: hidden;
    padding: 0 !important;
    border: 1px solid #dce4ee;
    border-radius: 8px;
    background: #fff;
}
.forum-container .switch_field label {
    min-width: 54px !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: #fff !important;
    color: #667085 !important;
    font-weight:700 !important;
}
.forum-container .switch_field input:checked + label {
    background: #172033 !important;
    color: #fff !important;
}
.forum-container #sch_res_ov {
    height: auto !important;
    margin: 0 0 16px !important;
    padding: 16px 18px !important;
    border: 1px solid #dce4ee !important;
    border-radius: 8px !important;
    background: #fff !important;
    line-height: 1.5 !important;
    text-align: left !important;
}
.forum-container #sch_res_ov h2 {
    color: #172033 !important;
    font-size: 18px !important;
    font-weight:700 !important;
}
.forum-container #sch_res_ov h2 strong {
    color: #00A495 !important;
}
.forum-container #sch_res_ov ul {
    margin-top: 5px !important;
    color: #667085 !important;
}
.forum-container #sch_res_board {
    margin: 0 0 18px !important;
    padding: 0 !important;
}
.forum-container #sch_res_board a,
.forum-container #fnewlist .td_group a,
.forum-container #fnewlist .td_board a,
.forum-container .new_list .new_board {
    display: inline-flex !important;
    align-items: center;
    min-height: 26px;
    padding: 3px 9px !important;
    border: 1px solid #dce4ee !important;
    border-radius: 8px !important;
    background: #e6f8f5 !important;
    color: #00A495 !important;
    font-size: 12px !important;
    font-weight:700 !important;
}
.forum-container #sch_res_board .sch_on,
.forum-container #sch_res_board a:hover {
    border-color: #172033 !important;
    background: #172033 !important;
    color: #fff !important;
    box-shadow: none !important;
}
.forum-container #fnewlist .tbl_wrap,
.forum-container .sch_res_list ul,
.forum-container .notice.ft_cnt,
.forum-container .pic_lt,
.forum-container .pic_li_lt {
    overflow: hidden !important;
    border: 1px solid #dce4ee !important;
    border-radius: 8px !important;
    background: #fff !important;
}
.forum-container #fnewlist .tbl_head01 thead th,
.forum-container .sch_res_list h2,
.forum-container .notice.ft_cnt h2,
.forum-container .pic_lt .lat_title,
.forum-container .pic_li_lt .lat_title {
    border-bottom: 1px solid #edf1f5 !important;
    background: linear-gradient(135deg, rgba(15, 118, 110, .055), rgba(245, 158, 11, .075)), #fbfcfe !important;
    color: #172033 !important;
    font-weight:700 !important;
}
.forum-container #fnewlist .tbl_head01 thead th {
    padding: 12px 10px !important;
}
.forum-container #fnewlist .tbl_head01 tbody td {
    padding: 14px 10px !important;
    border-bottom: 1px solid #edf1f5 !important;
    background: #fff !important;
    color: #667085 !important;
}
.forum-container #fnewlist .tbl_head01 tbody tr:hover td {
    background: #fbfcfe !important;
}
.forum-container #fnewlist .new_tit,
.forum-container .sch_res_title,
.forum-container .pic_lt li a,
.forum-container .pic_li_lt li .pic_li_tit,
.forum-container .notice.ft_cnt li a {
    color: #172033 !important;
    font-weight:700 !important;
}
.forum-container #fnewlist .new_tit:hover,
.forum-container .sch_res_title:hover,
.forum-container .pic_lt li a:hover,
.forum-container .pic_li_lt li a:hover,
.forum-container .notice.ft_cnt li a:hover {
    color: #00A495 !important;
}
.forum-container .sch_res_list {
    margin-bottom: 18px !important;
}
.forum-container .sch_res_list h2,
.forum-container .notice.ft_cnt h2,
.forum-container .pic_lt .lat_title,
.forum-container .pic_li_lt .lat_title {
    min-height: 54px !important;
    margin: 0 !important;
    padding: 0 56px 0 18px !important;
    line-height: 54px !important;
    font-size: 18px !important;
}
.forum-container .sch_res_list h2:before,
.forum-container .notice.ft_cnt h2:before,
.forum-container .pic_lt .lat_title:before,
.forum-container .pic_li_lt .lat_title:before {
    content: "";
    display: inline-block;
    width: 34px;
    height: 34px;
    margin-right: 10px;
    border: 1px solid #dce4ee;
    border-radius: 8px;
    background: rgba(255, 255, 255, .82) url("../img/forum/board-default.svg") no-repeat center / 24px 24px;
    vertical-align: middle;
}
.forum-container .sch_res_list h2:before { background-image: url("../img/forum/search.svg"); }
.forum-container .notice.ft_cnt h2:before { background-image: url("../img/forum/board-notice.svg"); }
.forum-container .pic_lt .lat_title:before,
.forum-container .pic_li_lt .lat_title:before { background-image: url("../img/forum/image.svg"); }
.forum-container .sch_res_list ul {
    margin: 0 0 18px !important;
    padding: 0 !important;
    border-top: 0 !important;
}
.forum-container .sch_res_list li,
.forum-container .notice.ft_cnt li,
.forum-container .pic_li_lt li {
    border-bottom: 1px solid #edf1f5 !important;
    background: #fff !important;
}
.forum-container .sch_res_list li {
    padding: 16px 18px !important;
}
.forum-container .sch_res_list p {
    color: #667085 !important;
}
.forum-container .sch_info,
.forum-container .sch_res_info,
.forum-container .lt_info,
.forum-container .notice.ft_cnt .lt_date {
    color: #667085 !important;
    font-size: 12px !important;
}
.forum-container .sch_more,
.forum-container .pic_lt .lt_more,
.forum-container .pic_li_lt .lt_more {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 44px !important;
    height: 30px !important;
    padding: 0 10px !important;
    border: 1px solid #dce4ee !important;
    border-radius: 8px !important;
    background: #fff !important;
    color: #00A495 !important;
    font-size: 12px !important;
    font-weight:700 !important;
}
.forum-container .notice.ft_cnt {
    padding: 0 !important;
}
.forum-container .notice.ft_cnt h2 a,
.forum-container .pic_lt .lat_title a,
.forum-container .pic_li_lt .lat_title a {
    color: #172033 !important;
}
.forum-container .notice.ft_cnt ul {
    margin: 0 !important;
    padding: 0 18px 12px !important;
}
.forum-container .notice.ft_cnt li {
    padding: 12px 0 !important;
}
.forum-container .notice.ft_cnt li.empty_li,
.forum-container .empty_table,
.forum-container .empty_list,
.forum-container .pic_lt .empty_li,
.forum-container .pic_li_lt .empty_li {
    color: #667085 !important;
    text-align: center !important;
}
.forum-container .notice.ft_cnt li.empty_li:before,
.forum-container .pic_lt .empty_li:before,
.forum-container .pic_li_lt .empty_li:before {
    content: "";
    display: block;
    width: 42px;
    height: 42px;
    margin: 22px auto 10px;
    border: 1px solid #dce4ee;
    border-radius: 8px;
    background: #f8fafc url("../img/forum/comment.svg") no-repeat center / 24px 24px;
}
.forum-container .pic_lt,
.forum-container .pic_li_lt {
    margin-bottom: 18px !important;
    padding: 0 !important;
}
.forum-container .pic_lt ul,
.forum-container .pic_li_lt ul {
    margin: 0 !important;
    padding: 16px !important;
}
.forum-container .pic_lt li,
.forum-container .pic_li_lt li {
    padding-bottom: 12px !important;
}
.forum-container .pic_lt li .lt_img img,
.forum-container .pic_li_lt li .lt_img img,
.forum-container .pic_lt li .lt_img video,
.forum-container .pic_li_lt li .lt_img video {
    border: 1px solid #edf1f5;
    border-radius: 8px;
    object-fit: cover;
}
.forum-container .new_icon,
.forum-container .hot_icon,
.forum-container .lock_icon,
.forum-container .fa-lock,
.forum-container .fa-download,
.forum-container .fa-link,
.forum-container .fa-heart,
.forum-container .cmt_def,
.forum-container .lt_cmt,
.forum-container .cnt_cm {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 20px !important;
    height: 20px !important;
    margin: 0 3px !important;
    padding: 0 6px !important;
    border: 1px solid #dce4ee !important;
    border-radius: 999px !important;
    background-color: #f8fafc !important;
    color: #00A495 !important;
    font-size: 11px !important;
    font-weight:700 !important;
    line-height: 18px !important;
    box-shadow: none !important;
    vertical-align: middle !important;
}
.forum-container .new_icon {
    width: 20px !important;
    padding: 0 !important;
    background: #172033 url("../img/forum/new.svg") no-repeat center / 17px 17px !important;
    color: transparent !important;
    font-size: 0 !important;
}
.forum-container .fa-lock,
.forum-container .lock_icon {
    background-image: url("../img/forum/lock.svg") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 14px 14px !important;
    color: transparent !important;
    font-size: 0 !important;
}
.forum-container .fa-download {
    background-image: url("../img/forum/file.svg") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 14px 14px !important;
    color: transparent !important;
    font-size: 0 !important;
}
.forum-container .fa-link {
    background-image: url("../img/forum/link.svg") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 14px 14px !important;
    color: transparent !important;
    font-size: 0 !important;
}
.forum-container .fa-heart,
.forum-container .hot_icon {
    background-color: #fff7e6 !important;
    color: #b45309 !important;
}
.forum-container #popular {
    margin: 14px 0 0 !important;
}
.forum-container #popular .popular_inner {
    width: auto !important;
    min-height: 36px !important;
    padding: 6px 8px !important;
    border: 1px solid #dce4ee !important;
    border-radius: 8px !important;
    background: #fff !important;
}
.forum-container #popular ul {
    display: flex !important;
    flex-wrap: wrap;
    gap: 6px;
}
.forum-container #popular li {
    float: none !important;
    height: auto !important;
    padding: 0 !important;
    line-height: 1 !important;
}
.forum-container #popular li a {
    display: inline-flex !important;
    align-items: center;
    min-height: 24px;
    padding: 0 9px;
    border-radius: 999px;
    background: #e6f8f5;
    color: #00A495 !important;
    font-size: 12px;
    font-weight:700;
}

/* 엑셀.net sideview: 아이디 클릭 메뉴를 세로 메뉴로 고정 */
.sv_wrap {
    display: inline-flex;
    position: relative;
    align-items: center;
    max-width: 100%;
    line-height: 1.4;
    vertical-align: middle;
}
.sv_wrap .sv {
    z-index: 10020;
    display: none;
    flex-direction: column;
    gap: 3px;
    min-width: 142px;
    width: max-content;
    max-width: min(230px, 90vw);
    margin: 0;
    padding: 7px;
    border: 1px solid rgba(15, 118, 110, .28);
    border-radius: 8px;
    background: #111827;
    box-shadow: 0 16px 32px rgba(15, 23, 42, .24);
    text-align: left;
    white-space: nowrap;
}
.sv_wrap .sv:before {
    content: "";
    position: absolute;
    top: -6px;
    left: 18px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 6px 6px;
    border-color: transparent transparent #111827 transparent;
}
.sv_wrap .sv.sv_on,
.sv_nojs .sv {
    display: flex !important;
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    height: auto;
}
.sv_wrap .sv a {
    display: block !important;
    width: auto !important;
    min-width: 128px;
    margin: 0 !important;
    padding: 9px 11px !important;
    border: 0;
    border-radius: 6px;
    color: #d9e6ef !important;
    font-size: 12px;
    font-weight:700;
    line-height: 1.35 !important;
    text-decoration: none !important;
}
.sv_wrap .sv a + a {
    border-top: 1px solid rgba(148, 163, 184, .16);
}
.sv_wrap .sv a:hover,
.sv_wrap .sv a:focus {
    background: #00A495;
    color: #ffffff !important;
    outline: 0;
}

/* Guest-safe responsive fixes for Gnuboard's default layout rules */
#hd.forum-hd,
#wrapper.forum-wrapper,
#ft.forum-ft {
    min-width: 0 !important;
    width: 100% !important;
}
#hd.forum-hd .forum-shell,
#container_wr.forum-shell,
#ft.forum-ft .forum-shell {
    width: min(1180px, calc(100% - 32px)) !important;
    max-width: 1180px;
}
#container.forum-container,
#aside.forum-aside {
    float: none !important;
    min-width: 0 !important;
    margin: 0 !important;
}
.forum-side-card--login,
.forum-login-panel,
.forum-login-panel form,
.forum-login-panel input,
.forum-login-panel button,
.forum-login-panel a {
    max-width: 100%;
}
.forum-login-panel #ol_id,
.forum-login-panel #ol_pw,
.forum-login-panel #ol_submit {
    width: 100% !important;
    min-width: 0;
}
.forum-login-panel #ol_submit {
    color: #fff !important;
    text-align: center;
}

/* 본문(#bo_v_con)에 붙여넣은 넓은 표·코드가 좁은 화면을 뚫지 않게 —
   내용이 화면보다 넓으면 본문 안에서만 옆으로 밀어 보게 됩니다. */
.forum-container #bo_v_con{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.forum-container #bo_v_con img{max-width:100%;height:auto;}

/* 댓글의 '수정'·'답변' 자리 —
   <span class="bo_vc_w"></span> 두 개가 댓글마다 비어 있는 채로 들어갑니다.
   눌러서 열기 전까지는 아무 것도 없어야 하는데, 회색 바탕이 그대로 칠해져
   댓글 아래에 빈 상자 두 개가 보였습니다. 내용이 생기면 그때 나타납니다.   */
.forum-container #bo_vc span.bo_vc_w:empty,
#bo_vc span.bo_vc_w:empty{
    display:none!important;margin:0!important;padding:0!important;
    border:0!important;background:none!important;
}

/* Guest write/comment forms */
.forum-container #bo_w form,
.forum-container #bo_vc_w form {
    max-width: 100%;
}
.forum-container #bo_w .write_div,
.forum-container #bo_vc_w .bo_vc_w_wr,
.forum-container #bo_vc_w .bo_vc_w_info {
    min-width: 0;
}
.forum-container #bo_w .bo_w_info,
.forum-container #bo_vc_w .bo_vc_w_info {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}
.forum-container #bo_w .bo_w_info .frm_input,
.forum-container #bo_vc_w .bo_vc_w_info .frm_input,
.forum-container #bo_w .full_input,
.forum-container #bo_w .half_input,
.forum-container #bo_w textarea,
.forum-container #bo_vc_w textarea {
    width: 100% !important;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}
.forum-container #bo_w .bo_w_link,
.forum-container #bo_w .file_wr {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr);
    gap: 8px;
    align-items: center;
    height: auto !important;
    min-height: 40px;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    position: static !important;
}
.forum-container #bo_w .bo_w_link label,
.forum-container #bo_w .file_wr label {
    display: grid;
    position: static !important;
    top: auto !important;
    left: auto !important;
    width: 36px;
    height: 36px;
    place-items: center;
    border: 1px solid #dce4ee;
    border-radius: 8px;
    background: #f8fafc;
    line-height: 1 !important;
    color: #00A495 !important;
}
.forum-container #bo_w .bo_w_link .frm_input {
    padding-left: 12px !important;
}
.forum-container #bo_w .frm_file {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-top: 0 !important;
    padding: 7px !important;
    background: #fff;
    box-sizing: border-box;
}
.forum-container #captcha {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    max-width: 100%;
}
.forum-container #bo_vc_w .bo_vc_w_info #captcha {
    grid-column: 1 / -1;
}
.forum-container #captcha #captcha_img {
    flex: 0 0 auto;
    width: auto;
    max-width: 120px;
    border-color: #cbd5e1;
    border-radius: 6px;
}
.forum-container #captcha #captcha_key {
    flex: 0 1 96px;
    min-width: 72px;
    margin: 0 !important;
    border-color: #cbd5e1;
    border-radius: 6px;
}
.forum-container #captcha #captcha_mp3,
.forum-container #captcha #captcha_reload {
    flex: 0 0 40px;
    background-color: #e5e7eb !important;
}
.forum-container #captcha #captcha_info {
    flex-basis: 100%;
    margin: 0 !important;
    color: #475467;
    letter-spacing: 0;
}
.forum-container #bo_w .btn_confirm,
.forum-container #bo_vc_w .btn_confirm {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
}
.forum-container #bo_w .btn_confirm .btn,
.forum-container #bo_w .btn_confirm button,
.forum-container #bo_vc_w .btn_confirm .btn,
.forum-container #bo_vc_w .btn_confirm button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 86px;
    min-height: 40px;
    padding: 0 14px !important;
    line-height: 1.2 !important;
    white-space: nowrap;
    box-sizing: border-box;
}

@media (max-width: 640px) {
    #hd.forum-hd .forum-shell,
    #container_wr.forum-shell,
    #ft.forum-ft .forum-shell {
        width: min(100% - 28px, 1180px) !important;
    }
    .forum-topbar__inner {
        gap: 12px;
    }
    .forum-search,
    .forum-account {
        width: 100%;
    }
    .forum-account {
        flex-wrap: wrap;
    }
    .forum-menu {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 2px;
    }
    .forum-menu__item {
        flex: 0 0 auto;
    }
    .forum-wrapper {
        padding-top: 20px;
    }
    .forum-layout {
        gap: 18px;
    }
    .forum-page-title {
        padding: 16px;
        font-size: 17px;
    }
    .forum-container #bo_w .bo_w_info,
    .forum-container #bo_vc_w .bo_vc_w_info {
        grid-template-columns: 1fr;
    }
    .forum-container #bo_w .bo_w_link,
    .forum-container #bo_w .file_wr {
        grid-template-columns: 30px minmax(0, 1fr);
    }
    .forum-container #bo_w .bo_w_link label,
    .forum-container #bo_w .file_wr label {
        width: 30px;
        height: 34px;
    }
    .forum-container #captcha {
        gap: 5px;
    }
    .forum-container #captcha #captcha_img {
        max-width: 96px;
    }
    .forum-container #captcha #captcha_key {
        flex: 0 0 88px;
        width: 88px !important;
        max-width: 88px;
    }
    .forum-container #captcha #captcha_mp3,
    .forum-container #captcha #captcha_reload {
        flex-basis: 36px;
        width: 36px;
        height: 36px;
        background-size: 36px 72px !important;
    }
    .forum-container #captcha #captcha_reload {
        background-position: 0 -36px !important;
    }
    .forum-container #bo_w .btn_confirm,
    .forum-container #bo_vc_w .btn_confirm {
        justify-content: stretch;
    }
    .forum-container #bo_w .btn_confirm .btn,
    .forum-container #bo_w .btn_confirm button,
    .forum-container #bo_vc_w .btn_confirm .btn,
    .forum-container #bo_vc_w .btn_confirm button {
        flex: 1 1 120px;
    }
}

/* 엑셀.net comments: basic/forum/gallery shared skin */
.forum-container .cmt_btn {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    margin: 28px 0 0 !important;
    padding: 15px 18px !important;
    border: 1px solid #dce4ee !important;
    border-radius: 8px 8px 0 0;
    background: linear-gradient(135deg, rgba(15, 118, 110, .07), rgba(245, 158, 11, .08)), #fff !important;
    color: #172033 !important;
    cursor: pointer;
}
.forum-container .cmt_btn .total {
    display: inline-flex !important;
    align-items: center;
    gap: 7px;
    margin: 0 !important;
    color: #00A495 !important;
    font-size: 13px !important;
    font-weight:700;
}
.forum-container .cmt_btn .total:after {
    display: none !important;
}
.forum-container .cmt_btn b {
    color: #172033 !important;
    font-size: 15px !important;
}
.forum-container .cmt_btn .cmt_more {
    float: none !important;
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
    background: url("../img/forum/top.svg") no-repeat center / contain !important;
    opacity: .72;
    transform: rotate(180deg);
}
.forum-container .cmt_btn.cmt_btn_op .cmt_more {
    transform: rotate(0deg);
}
.forum-container #bo_vc {
    margin: 0 !important;
    padding: 16px 18px 20px !important;
    border: 1px solid #dce4ee !important;
    border-top: 0 !important;
    border-radius: 0 0 8px 8px;
    background: #fff;
}
.forum-container #bo_vc h2,
.forum-container #bo_vc h1 {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
}
.forum-container #bo_vc article {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 12px;
    overflow: visible !important;
    margin-top: 12px !important;
    padding: 14px !important;
    border: 1px solid #edf1f5 !important;
    border-radius: 8px;
    background: #fbfcfe !important;
}
.forum-container #bo_vc article:first-of-type {
    margin-top: 0 !important;
}
.forum-container #bo_vc article:hover {
    border-color: #dce4ee !important;
    background: #fff !important;
}

/* ── 답변 댓글(대댓글) ──────────────────────────────────────────────────────
   예전에는 스킨이 margin-left 를 인라인으로 박아 '들여쓰기'만 했습니다.
   그러면 ① 답변인지 한눈에 안 보여 그냥 댓글처럼 보이고
        ② 인라인이라 좁은 화면에서 줄일 수가 없어 글이 찌그러졌습니다.
   이제 스킨은 cmt-reply / cmt-lv1~4 class 만 넘기고 여기서 처리합니다.
   · 왼쪽에 브랜드색 띠를 세워 원댓글과 확실히 구분
   · 들여쓰기는 4단까지만(그 뒤로 더 깊어져도 밀지 않음)
   · 좁은 화면에서는 들여쓰기를 확 줄임 (맨 아래 @media) */
.forum-container #bo_vc article.cmt-reply,
#bo_vc article.cmt-reply {
    border-left: 3px solid var(--brand, #00A495) !important;
    background: #fff !important;
}
.forum-container #bo_vc article.cmt-lv1, #bo_vc article.cmt-lv1 { margin-left: 34px; }
.forum-container #bo_vc article.cmt-lv2, #bo_vc article.cmt-lv2 { margin-left: 62px; }
.forum-container #bo_vc article.cmt-lv3, #bo_vc article.cmt-lv3 { margin-left: 86px; }
.forum-container #bo_vc article.cmt-lv4, #bo_vc article.cmt-lv4 { margin-left: 106px; }

/* 머리말에 붙는 '↳ 홍길동님에게 답변' 표.
   inline-flex 로 하면 글자 사이 띄어쓰기가 사라져 '↳홍길동님에게답변' 처럼
   붙어 버립니다. 글자만 들어가는 표라 inline-block 으로 둡니다. */
.forum-container #bo_vc .cmt-reply-to,
#bo_vc .cmt-reply-to {
    display: inline-block;
    height: 21px;
    padding: 0 9px;
    border-radius: 999px;
    background: var(--brand-soft, #e9f7f5);
    color: var(--brand-dark, #00776d);
    font-size: 11.5px;
    font-weight: 600;
    line-height: 21px;
    letter-spacing: -.2px;
    white-space: nowrap;
}
.forum-container #bo_vc .cmt-reply-to b,
#bo_vc .cmt-reply-to b {
    font-weight: 800;
}

.forum-container #bo_vc article .pf_img {
    float: none !important;
    width: 44px;
    height: 44px;
    margin: 0 !important;
}
.forum-container #bo_vc article .pf_img img,
.forum-container #bo_vc article .profile_img img {
    display: block;
    width: 44px !important;
    height: 44px !important;
    border-radius: 8px !important;
}
.forum-container #bo_vc article .cm_wrap {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0;
}
.forum-container #bo_vc header {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 10px;
    width: auto !important;
    min-height: 38px;
    padding: 0 44px 8px 0;
    border-bottom: 1px solid #edf1f5;
}
.forum-container #bo_vc header .member,
.forum-container #bo_vc header .guest,
.forum-container #bo_vc header .sv_member,
.forum-container #bo_vc header .sv_guest {
    color: #172033 !important;
    font-weight:700 !important;
}
.forum-container .bo_vc_hdinfo {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #667085 !important;
    font-size: 12px;
}
.forum-container #bo_vc .cmt_contents {
    padding: 12px 0 0 !important;
    color: #263241;
    font-size: 14px;
    line-height: 1.75 !important;
}
.forum-container #bo_vc .cmt_contents p {
    margin: 0;
}
.forum-container #bo_vc_empty {
    margin: 0 !important;
    padding: 36px 16px !important;
    border: 1px dashed #cbd5e1;
    border-radius: 8px;
    background: #f8fafc;
    color: #667085 !important;
    text-align: center;
}
.forum-container #bo_vc .bo_vl_opt {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    z-index: 80;
}
.forum-container #bo_vc .btn_cm_opt {
    width: 36px !important;
    min-width: 36px !important;
    height: 36px !important;
}
.forum-container #bo_vc .bo_vc_act {
    top: calc(100% + 8px) !important;
    right: 0 !important;
    width: 116px !important;
}
.forum-container #bo_vc_w.bo_vc_w {
    margin: 16px 0 0 !important;
    padding: 18px !important;
    border: 1px solid #dce4ee !important;
    border-radius: 8px;
    background: #fff !important;
    box-shadow: 0 12px 30px rgba(16, 24, 40, .05);
}
.forum-container #bo_vc_w > h2 {
    position: static !important;
    width: auto !important;
    height: auto !important;
    margin: 0 0 12px !important;
    overflow: visible !important;
    color: #172033;
    font-size: 16px;
    font-weight:700;
    line-height: 1.35;
    text-indent: 0 !important;
}
.forum-container #bo_vc_w form {
    display: block;
    width: 100%;
}
.forum-container #bo_vc_w #char_cnt {
    display: block;
    margin: 0 0 7px;
    color: #667085;
    font-size: 12px;
}
.forum-container #bo_vc_w textarea {
    display: block;
    width: 100% !important;
    min-height: 132px;
    padding: 12px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 8px !important;
    background: #fbfcfe !important;
    color: #172033;
    box-shadow: none !important;
    resize: vertical;
}
.forum-container #bo_vc_w .bo_vc_w_wr {
    display: grid;
    gap: 12px;
    margin-top: 10px;
}
.forum-container #bo_vc_w .bo_vc_w_info {
    float: none !important;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    width: 100%;
    margin: 0 !important;
}
.forum-container #bo_vc_w .bo_vc_w_info .frm_input {
    float: none !important;
    width: 100% !important;
    height: 40px;
    margin: 0 !important;
    padding: 0 12px;
}
.forum-container #bo_vc_w #captcha {
    clear: none !important;
    padding-top: 0 !important;
}
.forum-container #bo_vc_send_sns {
    float: none !important;
    display: block;
}
.forum-container #bo_vc_sns {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.forum-container #bo_vc_sns li {
    float: none !important;
    margin: 0 !important;
}
.forum-container #bo_vc_w .btn_confirm {
    clear: both;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 0 !important;
}
.forum-container #bo_vc_w .secret_cm {
    float: none !important;
    display: inline-flex !important;
    align-items: center;
    min-height: 40px;
}
.forum-container #bo_vc_w .btn_submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 108px;
    height: 42px !important;
    padding: 0 18px !important;
    border-radius: 8px !important;
    background: #172033 !important;
    color: #fff !important;
    font-weight:700;
}

@media (max-width: 640px) {
    .forum-container .cmt_btn {
        padding: 14px 15px !important;
    }
    .forum-container #bo_vc {
        padding: 14px !important;
    }
    .forum-container #bo_vc article {
        grid-template-columns: 38px minmax(0, 1fr);
        gap: 10px;
        padding: 12px !important;
    }
    /* 좁은 화면 답변 들여쓰기 — 넓은 화면(34/62/86/106px)보다 훨씬 작게 잡습니다.
       예전에는 여기서 margin-left:0 !important 로 아예 없애 버려서,
       휴대폰에서는 답변 댓글이 원댓글과 완전히 똑같아 보였습니다. */
    .forum-container #bo_vc article.cmt-lv1, #bo_vc article.cmt-lv1 { margin-left: 12px; }
    .forum-container #bo_vc article.cmt-lv2, #bo_vc article.cmt-lv2 { margin-left: 22px; }
    .forum-container #bo_vc article.cmt-lv3, #bo_vc article.cmt-lv3 { margin-left: 30px; }
    .forum-container #bo_vc article.cmt-lv4, #bo_vc article.cmt-lv4 { margin-left: 36px; }
    .forum-container #bo_vc .cmt-reply-to,
    #bo_vc .cmt-reply-to {
        height: 19px;
        padding: 0 7px;
        font-size: 11px;
    }
    .forum-container #bo_vc article .pf_img,
    .forum-container #bo_vc article .pf_img img,
    .forum-container #bo_vc article .profile_img img {
        width: 38px !important;
        height: 38px !important;
    }
    .forum-container #bo_vc header {
        display: block;
        padding-right: 42px;
    }
    .forum-container .bo_vc_hdinfo {
        display: flex;
        margin-top: 5px;
    }
    .forum-container #bo_vc_w.bo_vc_w {
        padding: 14px !important;
    }
    .forum-container #bo_vc_w .bo_vc_w_info {
        grid-template-columns: 1fr;
    }
    .forum-container #bo_vc_w .btn_confirm {
        display: grid !important;
        grid-template-columns: 1fr;
    }
    .forum-container #bo_vc_w .secret_cm {
        min-height: 28px;
    }
    .forum-container #bo_vc_w .btn_submit {
        width: 100%;
    }
}

/* ── 9. 반응형 ─────────────────────────────────────────────────────
   1100px : 사이드바가 본문 아래로 · 1000px : 격자 축소
    760px : 상단바가 로고+검색버튼+햄버거로 접힘, 메뉴는 시트로
    520px : 모든 격자 한 칸, 목록에서 글쓴이·조회 숨김
   ────────────────────────────────────────────────────────────────── */
@media (max-width:1100px){
  .forum-layout{grid-template-columns:minmax(0,1fr);}
  .forum-aside{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
  .forum-hero{grid-template-columns:minmax(0,1fr);}
}
@media (max-width:1100px){
  .forum-strip__rail{grid-template-columns:repeat(8,minmax(0,1fr));}
}
@media (max-width:1000px){
  .forum-board-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .forum-latest-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:760px){
  :root{--gap:16px;--radius:12px;}
  /* 게시판 상자 안쪽 여백을 한 번에 줄인다(머리말·도구·필터·목록 모두 따라옴) */
  .forum-container #bo_list,.forum-container #bo_gall,
  .forum-container #bo_v,.forum-container #bo_w{--pad:14px;}
  /* 좁은 화면 : 제목 줄이 먼저, 건수·관리자는 아랫줄 오른쪽으로 가지런히 */
  .forum-board-head{flex-wrap:wrap;padding:13px 14px;gap:8px 10px;}
  .forum-board-head__l{flex:1 1 100%;}
  .forum-board-head__r{flex:1 1 100%;justify-content:flex-end;}
  .forum-board-head__ico{flex:0 0 34px;width:34px;height:34px;border-radius:9px;}
  .forum-board-head__ico svg{width:19px;height:19px;}
  .forum-board-head__title{font-size:17px;}
  .forum-board-head__sub{font-size:12.5px;}
  .forum-toolbar{padding:10px 14px;}
  .forum-shell,#hd.forum-hd .forum-shell,#container_wr.forum-shell,#ft.forum-ft .forum-shell{width:min(var(--shell),calc(100% - 24px))!important;}
  .forum-wrapper{padding:18px 0 34px;}
  /* 상단바 : 로고 / (검색은 아래 줄) / 햄버거 */
  /* 상단바 : 로고 · 돋보기 · 햄버거 — 검색창은 돋보기를 눌렀을 때만 아랫줄에 */
  .forum-topbar__inner{display:flex;flex-wrap:wrap;align-items:center;gap:4px;min-height:52px;padding:7px 0;}
  .forum-brand{flex:1 1 auto;min-width:0;margin-right:6px;}
  .forum-brand strong{font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .forum-searchbtn{display:grid;order:2;flex:0 0 38px;}
  .forum-burger{display:grid;order:3;flex:0 0 38px;}
  .forum-search{display:none;order:4;flex:1 1 100%;margin:2px 0 7px;}
  .forum-topbar__inner.sch-open .forum-search{display:flex;}
  .forum-topbar__inner.sch-open .forum-searchbtn{background:rgba(255,255,255,.22);}
  .forum-search input{height:38px;font-size:15px;}   /* iOS 자동확대 방지: 15px 이상 */
  .forum-search button.forum-search__btn{height:38px;}
  .forum-account{display:none;}          /* 초록 띠의 계정 줄은 숨기고 시트에서 보여줍니다 */
  /* 검색창 옆 충교위키 알약 — 예전 모바일 상단바에 있던 것 */
  .forum-mwiki{order:2;display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;
    height:32px;margin:0 2px 0 0;padding:0 11px 0 9px;border-radius:50px;
    background:rgba(255,255,255,.17);color:#fff!important;font-size:12.5px;font-weight:500;
    letter-spacing:-.2px;white-space:nowrap;}
  .forum-mwiki svg{flex:0 0 17px;width:17px;height:17px;}
  .forum-mwiki:active{background:rgba(255,255,255,.3);}
  .forum-searchbtn{order:3;}
  .forum-burger{order:4;}
  .forum-search{order:5;}
  /* 게시판 머리말 뒤로가기 */
  .forum-back{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;
    border-radius:10px;background:#f1f5f9;color:#334155;}
  .forum-back svg{width:18px;height:18px;}
  /* 메뉴 시트 안 : 퀵메뉴 4칸 · 인기검색어 · 글자크기 */
  .forum-quick{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;
    width:100%;margin:14px 0 0;padding:13px 0 0;list-style:none;border-top:1px solid #eef2f6;}
  .forum-quick li{margin:0;}
  .forum-quick a{position:relative;display:flex!important;flex-direction:column;align-items:center;
    justify-content:center;gap:5px;min-height:58px;padding:8px 2px;border-radius:12px;
    background:#f4f7f9;color:#334155;font-size:11.5px;font-weight:500;text-align:center;}
  .forum-quick a svg{width:18px;height:18px;color:var(--brand);}
  .forum-quick a:active{background:#e6f8f5;}
  .forum-quick__num{position:absolute;top:6px;right:6px;display:grid;place-items:center;
    min-width:18px;height:17px;padding:0 5px;border-radius:999px;background:#d8f2ee;
    color:#0f766e;font-size:10.5px;line-height:17px;}
  .forum-pop{display:block;width:100%;margin:14px 0 0;padding:13px 0 0;
    border-top:1px solid #eef2f6;color:#475467;font-size:13px;}
  .forum-pop:empty{display:none;}
  .forum-pop #popular{margin:0;padding:0;border:0;background:none;}
  .forum-pop h2,.forum-pop h3{display:block;position:static;width:auto;height:auto;
    margin:0 0 6px;padding:0;overflow:visible;clip:auto;color:var(--ink-3);
    font-size:12px;font-weight:700;text-indent:0;}
  .forum-pop ul{margin:0;padding:0;display:flex;flex-wrap:wrap;gap:5px;}
  .forum-pop li{float:none;margin:0;padding:0;list-style:none;}
  .forum-pop a{display:inline-flex;align-items:center;padding:5px 11px;border-radius:50px;
    background:#f1f5f9;color:#334155;font-size:12.5px;font-weight:600;}
  .forum-textsize{display:flex;align-items:center;gap:6px;width:100%;margin:14px 0 0;
    padding:13px 0 0;border-top:1px solid #eef2f6;}
  .forum-textsize__label{flex:1 1 auto;color:var(--ink-3);font-size:12px;font-weight:700;letter-spacing:.4px;}
  .forum-textsize button{display:grid;place-items:center;width:44px;height:38px;padding:0;
    border:1px solid #e2e8f0;border-radius:10px;background:#fff;color:var(--ink-2);
    font-family:inherit;font-weight:700;line-height:1;cursor:pointer;}
  .forum-textsize button.select{border-color:var(--brand);background:var(--brand-soft);}
  /* 메뉴줄 : 열었을 때만 보이는 시트 */
  .forum-nav{display:none;border-top:1px solid rgba(255,255,255,.25);}
  .forum-nav.is-open{display:block;}
  /* 시트 안쪽은 세로로 쌓음 (가로 배치면 메뉴가 폭 0으로 눌립니다) */
  .forum-nav__inner{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:8px 0 12px;}
  .forum-menu{flex-direction:column;align-items:stretch;gap:2px;}
  .forum-menu__item{width:100%;}
  .forum-nav a,.forum-menu__link{display:block;padding:12px 10px;font-size:15px;border-radius:10px;}
  .forum-menu__item.has-sub > .forum-menu__link:after{right:14px;}
  .forum-menu__sub{position:static;display:block;min-width:0;margin:0 0 6px 10px;padding:2px 0;
    border:0;border-left:2px solid var(--brand-soft);border-radius:0;box-shadow:none;}
  .forum-menu__sub a{padding:10px 12px;font-size:14px;}
  /* 시트를 연 상태에서 계정 메뉴도 같이 노출 */
  .forum-nav.is-open .forum-account--sheet{display:flex;flex-wrap:wrap;justify-content:flex-start;
    gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid #eef2f6;}
  .forum-account--sheet a{color:var(--ink-2)!important;border:1px solid var(--line);}
  .forum-account--sheet .forum-join,
  .forum-account--sheet .forum-admin{background:var(--brand);border-color:var(--brand);color:#fff!important;}

  .forum-board-head__title{font-size:18px;}
  /* 섹션 제목이 눌려 두 줄로 쪼개지지 않게 */
  .forum-section-head{display:block;}
  .forum-section-head h2{font-size:18px;}
  .forum-section-head p{margin-top:5px;max-width:none;}
  .forum-hero{padding:18px 16px;gap:16px;}
  .forum-strip{padding:12px 14px 14px;}
  /* 좁은 화면에서는 옆으로 밀어 보는 줄 */
  .forum-strip__rail{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px;
    scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;}
  .forum-strip__item{flex:0 0 68px;width:68px;scroll-snap-align:start;}
  .forum-hero__panel{width:100%;justify-content:space-between;}
  .forum-hero__panel dl{flex:1 1 0;padding:0 8px;}
  .forum-hero__panel dd{font-size:22px;}
  .forum-board-head__r{gap:8px;}
  .forum-toolbar{flex-wrap:wrap;}
  .forum-chips{order:2;width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:2px;}
  .forum-btn-write{order:1;margin-left:auto;}
  .forum-aside{grid-template-columns:minmax(0,1fr);}
}
@media (max-width:400px){
  /* 아주 좁아도 '충교위키' 글자는 그대로 두고 크기만 줄입니다 */
  .forum-mwiki{height:30px;gap:5px;padding:0 9px 0 8px;font-size:11.5px;}
  .forum-mwiki svg{flex:0 0 15px;width:15px;height:15px;}
  .forum-brand strong{font-size:16px;}
  .forum-searchbtn,.forum-burger{width:34px;height:34px;}
  .forum-searchbtn svg,.forum-burger svg{width:20px;height:20px;}
  .forum-quick a{font-size:11px;}
}
@media (max-width:520px){
  .forum-shell,#hd.forum-hd .forum-shell,#container_wr.forum-shell,#ft.forum-ft .forum-shell{width:calc(100% - 20px)!important;}
  .forum-board-grid,.forum-latest-grid{grid-template-columns:minmax(0,1fr);}
  .forum-board-head{flex-wrap:wrap;}
  .forum-board-head__r{width:100%;justify-content:space-between;}
}

/* ══════════════════════════════════════════════════════════════════════
   10. 마감 디테일
   눈에 확 띄지는 않지만, 있으면 "손이 간 사이트"로 읽히는 것들입니다.
   ══════════════════════════════════════════════════════════════════════ */

/* 드래그로 글자를 선택했을 때 — 기본 파랑 대신 사이트 색 */
::selection{background:rgba(0,164,149,.20);color:var(--ink);}

/* 키보드로 이동할 때만 보이는 초점 테두리 (마우스 클릭 때는 안 나옵니다) */
:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:6px;}
#hd.forum-hd :focus-visible{outline-color:#fff;}
.forum-ft :focus-visible{outline-color:#fff;}

/* '본문 바로가기' — 키보드 사용자가 Tab 을 처음 눌렀을 때 나타납니다 */
#skip_to_container a:focus,#skip_to_container a:active{
  width:auto;height:auto;padding:10px 16px;border-radius:0 0 10px 0;
  background:#172033;color:#fff;font-size:14px;font-weight:700;line-height:1.4;}

/* 스크롤바 — 굵은 기본 회색 대신 얇고 연하게 (크롬·엣지) */
*::-webkit-scrollbar{width:10px;height:10px;}
*::-webkit-scrollbar-track{background:transparent;}
*::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;
  background:#cfd8e0;background-clip:content-box;}
*::-webkit-scrollbar-thumb:hover{background:#b3bfca;background-clip:content-box;}
html{scrollbar-color:#cfd8e0 transparent;scrollbar-width:thin;}

/* 누르는 순간 살짝 들어가는 느낌 — 버튼이 '반응한다'는 신호 */
.forum-btn-write:active,.forum-primary-btn:active,.forum-secondary-btn:active,
.fl-icon-btn:active,.fb-chip:active,.forum-chip:active{transform:translateY(1px);}

/* 제목 줄바꿈을 더 보기 좋게 (외톨이 글자 방지) */
h1,h2,h3,.fl-tit,.forum-hero h2,.forum-board-head__title{text-wrap:pretty;}

/* 숫자는 자릿수가 흔들리지 않게 */
.forum-board-head__total strong,.fl-c-hit,.forum-hero__panel dd,
.forum-visit-grid b,.forum-latest-basic__cnt strong{font-variant-numeric:tabular-nums;}

/* 글이 없을 때 — 허전한 한 줄 대신 아이콘을 곁들인 안내 */
.fl-empty,.forum-container .empty_list,.forum-container .empty_table,
.forum-container li.empty_li{padding:52px 16px!important;color:var(--ink-3)!important;
  font-size:13.5px;text-align:center!important;}
.fl-empty::before,.forum-container .empty_list::before,
.forum-container .empty_table::before{content:"";display:block;width:44px;height:44px;
  margin:0 auto 12px;border-radius:13px;background:#f1f4f8;
  -webkit-mask:url("../img/forum/comment.svg") no-repeat center/22px 22px,linear-gradient(#000,#000);
  -webkit-mask-composite:xor;mask:url("../img/forum/comment.svg") no-repeat center/22px 22px,linear-gradient(#000,#000);
  mask-composite:exclude;}

/* 이미지가 늦게 떠도 칸이 흔들리지 않게 */
.forum-strip__item img,.forum-latest-basic__thumb img{background:#f4f6f8;}

/* 움직임을 줄이도록 설정한 사용자에게는 애니메이션을 끕니다 */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important;scroll-behavior:auto!important;}
  .forum-latest-card:hover,.forum-strip__item:hover{transform:none;}
}

/* 인쇄 — 공문·회의자료로 뽑을 때 상단바·사이드바·버튼을 빼고 본문만 */
/* ══════════════════════════════════════════════════════════════════════
   [마감 1] 이미 열어 본 글은 옅게
   ──────────────────────────────────────────────────────────────────────
   같은 게시판을 하루에도 몇 번씩 들르는 분들이 '내가 아직 안 본 글'을
   한눈에 고를 수 있게 합니다. 브라우저가 기억하는 방문 기록만 쓰므로
   서버에는 아무 것도 남지 않습니다.
   (:visited 는 브라우저 정책상 '색'만 바꿀 수 있습니다 — 굵기는 안 됩니다)
   ══════════════════════════════════════════════════════════════════════ */
.fl-tit:visited,
.forum-latest-basic__subject:visited,
#bo_gall .gall_text_href a:visited .bo_tit{color:#9aa5b1;}
.fl-row:hover .fl-tit:visited,
.forum-latest-basic li:hover .forum-latest-basic__subject:visited{color:var(--brand-dark);}

/* ══════════════════════════════════════════════════════════════════════
   [마감 2] 날짜를 사람이 읽는 말로 — '3시간 전 · 어제 · 09-08'
   표기는 inc/craft.php 의 excelnet_when() 이 만듭니다.
   오늘 올라온 글은 숫자를 브랜드색으로 살짝 띄워 새 글이 눈에 들어오게.
   마우스를 올리면 정확한 날짜·시각이 말풍선으로 뜹니다.
   ══════════════════════════════════════════════════════════════════════ */
.fl-c-date time,.lt_date time{font-variant-numeric:tabular-nums;}
.fl-c-date time.is-fresh,.lt_date time.is-fresh{color:var(--brand-dark);font-weight:500;}
/* 숫자 칸은 자릿수가 달라도 흔들리지 않게 */
.fl-c-num,.fl-c-hit,.fl-c-date,.forum-hero__panel dd,.forum-ft__stat b,
.forum-side-card .ft_cnt strong{font-variant-numeric:tabular-nums;}

/* ══════════════════════════════════════════════════════════════════════
   [마감 3] 첨부파일 확장자 꼬리표
   ──────────────────────────────────────────────────────────────────────
   도구를 내려받는 사이트라 '이게 엑셀인지 단독웹인지'가 중요합니다.
   파일 이름 앞에 XLSM·HTML·PDF 같은 꼬리표를 종류별 색으로 붙입니다.
   꼬리표를 붙이는 일은 inc/craft.php 의 스크립트가 합니다.
   ══════════════════════════════════════════════════════════════════════ */
.fx{display:inline-flex;align-items:center;height:17px;margin-right:7px;padding:0 6px;
  border-radius:4px;font-size:10px;font-weight:700;letter-spacing:.02em;
  font-variant-numeric:tabular-nums;vertical-align:1px;}
.fx-xls{background:#e3f5ec;color:#146c43;}   /* 엑셀 */
.fx-web{background:#fff1e3;color:#b45309;}   /* 단독웹(HTML) */
.fx-pdf{background:#fde8e8;color:#b42318;}
.fx-zip{background:#eef1f5;color:#475467;}
.fx-doc{background:#e7effb;color:#1d4ed8;}
.fx-ppt{background:#fdeae3;color:#c2410c;}
.fx-img{background:#f1e9fb;color:#6d28d9;}
.fx-exe{background:#e6e9ee;color:#1f2937;}
.fx-etc{background:#eef1f5;color:#667085;}
#bo_v_file a,.rqx-fname{display:inline-flex;align-items:center;}

/* ══════════════════════════════════════════════════════════════════════
   [마감 4] 본문 읽기 진행 막대
   ──────────────────────────────────────────────────────────────────────
   사용설명서처럼 긴 글에서 '어디쯤 읽고 있는지'를 화면 맨 위 가는 줄로.
   본문이 한 화면에 다 들어오면 아예 나타나지 않습니다.
   ══════════════════════════════════════════════════════════════════════ */
.forum-progress{position:fixed;top:0;left:0;right:0;height:3px;z-index:1200;
  background:transparent;opacity:0;transition:opacity .25s;pointer-events:none;}
.forum-progress i{display:block;height:100%;transform:scaleX(0);transform-origin:0 50%;
  background:linear-gradient(90deg,var(--brand),var(--brand-dark));
  box-shadow:0 0 0 1px rgba(0,164,149,.18);}
@media (prefers-reduced-motion:reduce){
  .forum-progress{transition:none;}
}

/* ══════════════════════════════════════════════════════════════════════
   [마감 5] 인쇄 — 사용설명서를 종이로 뽑는 분들을 위해
   화면 장식(머리띠·사이드바·버튼·진행막대)을 걷어내고 본문만 남깁니다.
   본문 안 링크는 주소를 괄호로 같이 찍어, 종이만 봐도 어디인지 알 수 있게.
   ══════════════════════════════════════════════════════════════════════ */
@page{margin:14mm 12mm;}
@media print{
  #hd,#gnb,#ft,#aside,.forum-strip,.forum-hero,.fb,.forum-toolbar,
  .forum-top-btn,.bo_sch_wrap,.fl-adminbar,.btn_bo_user,#bo_btn_top,
  .forum-progress,#bo_v_act,#bo_v_top,.bo_v_nb,#bo_vc_w,#bo_v_share,
  .bo_vl_opt,.forum-board-head__admin,.fl-tools,.s-write{display:none!important;}
  body{background:#fff;color:#000;}
  .forum-layout{display:block;}
  .forum-wrapper{padding:0;}
  .forum-shell,#container_wr.forum-shell{width:100%!important;max-width:none;}
  /* 종이에서는 카드 테두리·그림자가 잉크만 먹습니다 */
  .forum-container #bo_list,.forum-container #bo_gall,
  .forum-container #bo_v,.forum-container #bo_w,.forum-board-head{
    border:0!important;border-radius:0!important;box-shadow:none!important;padding-left:0;padding-right:0;}
  .forum-board-head{border-bottom:1.5px solid #000!important;padding-bottom:8px;margin-bottom:10px;}
  .forum-container #bo_v{border-top:0!important;}
  #bo_v_title,.s-vt h3{font-size:17pt;}
  #bo_v_con{font-size:11pt;line-height:1.7;overflow:visible!important;}
  /* 본문 링크는 주소를 같이 찍는다(이미지 링크는 빼고) */
  #bo_v_con a[href^="http"]:after{content:" (" attr(href) ")";font-size:9pt;color:#555;word-break:break-all;}
  #bo_v_con a[href^="http"]:has(img):after{content:"";}
  /* 한 줄이 페이지 경계에서 잘리지 않게 */
  .fl-row,#bo_vc article,#bo_v_file li,#bo_v_link li{break-inside:avoid;page-break-inside:avoid;}
  #bo_v_atc,#bo_v_file,#bo_v_link{break-inside:auto;}
  .fl-list,.forum-container #bo_v,.forum-container #bo_gall{border:0!important;box-shadow:none!important;}
  a{color:#000!important;text-decoration:none!important;}
  .forum-board-head{margin-bottom:10px;}
  .forum-board-head__ico{display:none;}
}
