/* HN26ORG 20261009 : 임원현황 (서브 .hn26s 토큰 사용, 다크모드 자동) */
.hno{--o-bg:var(--bg,#F2F5FA);--o-sf:var(--surface,#fff);--o-sf2:var(--surface-2,#E9EFF8);--o-ink:var(--ink,#0F1827);--o-ink2:var(--ink-2,#47566B);--o-ink3:var(--ink-3,#7C8AA0);--o-line:var(--line,#DBE3EF);--o-blue:var(--blue,#0F4FE0);--o-wash:var(--blue-wash,#E6EEFF);--o-grad:var(--grad,linear-gradient(102deg,#0F4FE0 0%,#1E7BF0 46%,#00B36B 100%));
  font-family:var(--ff,'Pretendard Variable',Pretendard,system-ui,sans-serif);color:var(--o-ink);margin-top:8px}
.hno *,.hno *::before,.hno *::after{box-sizing:border-box}
.hno ul{list-style:none;margin:0;padding:0}
.hno h3,.hno p{margin:0}

/* 구성 요약 */
.hno .hno__sum{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}
.hno__sum li{border-radius:999px;font-size:13px;color:var(--o-ink2)}
.hno__sum li.is-total{padding:7px 14px;background:var(--o-ink);color:var(--o-sf);font-weight:600}
.hno__sum li.is-total b{font-size:15px;margin-right:1px}
.hno__sum a{display:block;padding:7px 14px;border-radius:999px;border:1px solid var(--o-line);background:var(--o-sf);text-decoration:none;color:inherit;transition:.2s}
.hno__sum a:hover{border-color:var(--o-blue);color:var(--o-blue)}
.hno__sum a b{color:var(--o-blue);margin-left:2px}

/* 대표 임원 */
.hno__feat{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;margin-bottom:6px}
.hno__pf{position:relative;display:flex;gap:22px;padding:22px;border-radius:20px;background:var(--o-sf);border:1px solid var(--o-line);overflow:hidden;box-shadow:0 18px 40px -30px rgba(15,24,39,.5)}
.hno__pf::before{content:"";position:absolute;left:0;top:0;right:0;height:4px;background:var(--o-grad)}
.hno__ph{flex:none;align-self:center;width:118px;border-radius:14px;overflow:hidden;background:var(--o-sf2)}
.hno__ph img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top}
.hno__pfb{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center}
.hno__pos{align-self:flex-start;padding:4px 11px;border-radius:999px;background:var(--o-wash);color:var(--o-blue);font-size:12.5px;font-weight:800}
.hno__nm{margin-top:10px !important;font-size:26px;font-weight:800;letter-spacing:-.03em;color:var(--o-ink)}
.hno__car{margin-top:10px !important}
.hno__car li{position:relative;padding-left:12px;font-size:14px;line-height:1.7;color:var(--o-ink2);word-break:keep-all}
.hno__car li::before{content:"";position:absolute;left:0;top:.75em;width:4px;height:4px;border-radius:50%;background:var(--o-ink3)}

/* 직위별 명단 */
.hno__grp{scroll-margin-top:140px;margin-top:34px}
.hno__gh{display:flex;align-items:center;gap:10px;margin-bottom:12px !important;font-size:18px;font-weight:800;letter-spacing:-.02em;color:var(--o-ink)}
.hno__gh::after{content:"";flex:1;height:1px;background:var(--o-line)}
.hno__gh em{font-style:normal;font-size:13px;font-weight:600;color:var(--o-ink3)}
.hno .hno__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.hno__mb{display:flex;align-items:center;gap:11px;padding:11px 13px;border-radius:12px;background:var(--o-sf);border:1px solid var(--o-line);transition:border-color .2s,transform .2s}
.hno__mb:hover{border-color:color-mix(in srgb,var(--o-blue) 45%,var(--o-line));transform:translateY(-1px)}
.hno__mb.has-car{grid-column:span 2}
.hno__av{flex:none;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--o-wash);color:var(--o-blue);font-size:15px;font-weight:800}
.hno__mbt{min-width:0;display:flex;flex-direction:column}
.hno__mbt strong{font-size:15px;font-weight:600;color:var(--o-ink);letter-spacing:-.01em}
.hno__mbt small{font-size:12.5px;color:var(--o-ink3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.hno__note{margin-top:28px !important;font-size:13px;color:var(--o-ink3)}
.hno__empty{padding:60px 0;text-align:center;color:var(--o-ink3)}

/* 관리자 */
.hno__adm{display:flex;gap:10px;margin-top:6px;font-size:12px;color:var(--o-ink3)}
.hno__adm a{color:var(--o-blue);text-decoration:none;font-weight:600}
.hno__adm label{display:inline-flex;align-items:center;gap:3px;cursor:pointer}
.hno__btns{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:36px;padding-top:20px;border-top:1px solid var(--o-line)}
.hno__btns-l{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
.hno__btns-r{display:flex;gap:6px;margin-left:auto}
.hno__btns input[type=submit],.hno__btns a{padding:8px 14px;border-radius:10px;border:1px solid var(--o-line);background:var(--o-sf);color:var(--o-ink2);font-size:13px;font-weight:600;text-decoration:none;cursor:pointer;font-family:inherit}
.hno__btns a.is-main{background:var(--o-blue);border-color:var(--o-blue);color:#fff}
.hno__all{font-size:13px;color:var(--o-ink2);margin-right:4px;display:inline-flex;gap:4px;align-items:center}

/* 등장 */
.hno.is-anim .hno-rv{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.25,1)}
.hno.is-anim .hno-rv.in{opacity:1;transform:none}

/* 다크 */
html[data-theme="dark"] .hno__pf{box-shadow:0 18px 40px -30px rgba(0,0,0,.9)}
html[data-theme="dark"] .hno__btns a.is-main{color:#0B1220}

/* 반응형 */
@container site (max-width:880px){
  .hno__feat{grid-template-columns:minmax(0,1fr)}
}
@container site (max-width:520px){
  .hno__pf{gap:16px;padding:18px}
  .hno__ph{width:92px}
  .hno__nm{font-size:22px}
  .hno .hno__list{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hno__mb.has-car{grid-column:span 2}
}
@media print{.hno__btns,.hno__adm{display:none}.hno.is-anim .hno-rv{opacity:1;transform:none}}
