미디어위키:Common.css: 두 판 사이의 차이

인테리어 위키
둘러보기로 이동 검색으로 이동
편집 요약 없음
편집 요약 없음
태그: 수동 되돌리기
 
(같은 사용자의 중간 판 266개는 보이지 않습니다)
1번째 줄: 1번째 줄:
/* 이 CSS 설정은 모든 스킨에 적용됩니다 */
/* 이 CSS 설정은 모든 스킨에 적용됩니다 */


/* 1) TOC를 왼쪽 사이드처럼 보이게 */
/* ===============================
body.skin-vector-2022 #toc,
  Google Fonts: Inter
body.skin-vector-2022 .toc {
  =============================== */
   float: left;
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
   width: 220px;
 
   margin: 0 16px 16px 0;
/* ===============================
   padding: 10px;
  기본 폰트
   border: 0;
  =============================== */
   background: transparent;
.mw-parser-output {
   font-size: inherit;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont,
              'Apple SD Gothic Neo', 'Noto Sans KR',
              system-ui, sans-serif;
}
 
/* 문서 제목 + 섹션 제목 */
#firstHeading,
.mw-parser-output h2,
.mw-parser-output h3,
.mw-parser-output h4,
.mw-parser-output h5 {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont,
              'Apple SD Gothic Neo', 'Noto Sans KR',
              system-ui, sans-serif;
}
 
/* ===============================
  Heading 번호 매기기 (h2 ~ h5)
  1.
  1.1
  1.1.1
  1.1.1.1
  =============================== */
 
/* h2 기준 카운터 초기화 */
.mw-parser-output { counter-reset: h2; }
 
/* ---------- h2 ---------- */
.mw-parser-output h2 {
  counter-reset: h3;
  font-size: 27px;
  font-weight: 500;
}
.mw-parser-output h2 .mw-headline::before {
  counter-increment: h2;
  content: counter(h2) ". ";
  margin-right: 2px;
  font-size: 27px;
  font-weight: 500;
}
 
/* ---------- h3 ---------- */
.mw-parser-output h3 {
  counter-reset: h4;
  font-size: 22px;
  font-weight: 500;
}
.mw-parser-output h3 .mw-headline::before {
   counter-increment: h3;
   content: counter(h2) "." counter(h3) " ";
   margin-right: 2px;
  font-size: 22px;
  font-weight: 500;
}
 
/* ---------- h4 ---------- */
.mw-parser-output h4 {
  counter-reset: h5;
  font-size: 20px;
  font-weight: 500;
}
.mw-parser-output h4 .mw-headline::before {
  counter-increment: h4;
  content: counter(h2) "." counter(h3) "." counter(h4) " ";
  margin-right: 2px;
  font-size: 20px;
  font-weight: 500;
}
 
/* ---------- h5 ---------- */
.mw-parser-output h5 {
  font-size: 18px;
  font-weight: 500;
}
.mw-parser-output h5 .mw-headline::before {
   counter-increment: h5;
   content: counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) " ";
   margin-right: 2px;
   font-size: 18px;
  font-weight: 500;
}
}


/* TOC 제목(목차) 스타일 최소화 */
/* ===============================
body.skin-vector-2022 #toc .toctitle,
  Heading 하단 구분선 + 여백 (h2 ~ h5)
body.skin-vector-2022 .toc .toctitle {
  =============================== */
   text-align: left;
.mw-parser-output h1,
   margin: 0 0 6px 0;
.mw-parser-output h2,
.mw-parser-output h3,
.mw-parser-output h4,
.mw-parser-output h5 {
   border-bottom: 1px solid #ccc;
  padding-bottom: 5px;
   margin: 1.2em 0 0.8em;
 
  /* 접기 UX */
  cursor: pointer;
}
}


/* 2) 인포박스 클래스: 오른쪽 고정 + 무장식 */
/* ===============================
body.skin-vector-2022 table.infobox-namu {
  Heading 제목 ↔ 편집 링크 정렬
  float: right;
  - :has() 제거
  width: 320px;
  - 기본: flex-start
  margin: 0 0 16px 16px;
  - JS가 .mw-has-editsection 클래스를 붙이면 space-between
   border: 0;
  =============================== */
   background: transparent;
.mw-parser-output h1,
   font-size: inherit;
.mw-parser-output h2,
  line-height: 1.6;
.mw-parser-output h3,
.mw-parser-output h4,
.mw-parser-output h5 {
   display: flex;
   align-items: center;
   justify-content: flex-start; /* 기본 */
}
}


body.skin-vector-2022 table.infobox-namu th,
/* 제목 텍스트 */
body.skin-vector-2022 table.infobox-namu td {
.mw-parser-output .mw-headline {
   border: 0;
   flex: 1 1 auto;
   background: transparent;
   min-width: 0; /* 긴 제목 줄바꿈 안정화 */
  padding: 2px 0;
  vertical-align: top;
}
}


body.skin-vector-2022 table.infobox-namu th {
/* 편집 링크 */
   font-weight: 700;
.mw-parser-output .mw-editsection {
   text-align: left;
   flex: 0 0 auto;
  padding-right: 10px;
   font-size: 12px;
   white-space: nowrap;
   white-space: nowrap;
  margin-left: 12px;
}
/* 편집 링크가 있을 때만 양끝 정렬 (JS가 클래스 부여) */
.mw-parser-output h2.mw-has-editsection,
.mw-parser-output h3.mw-has-editsection,
.mw-parser-output h4.mw-has-editsection,
.mw-parser-output h5.mw-has-editsection {
  justify-content: space-between;
}
/* ===============================
  [편집 | 원본편집] → [편집]
  =============================== */
/* '원본 편집' 링크 숨김 */
.mw-editsection a:last-of-type { display: none; }
/* 구분자(|) 숨김 */
.mw-editsection .mw-editsection-divider { display: none; }
/* ===============================
  접기/펼치기 (h2~h5)
  - JS가 h2~h5에 아이콘(.mw-fold-icon)을 직계 자식으로 prepend
  - 접힌 상태: .mw-fold-collapsed
  =============================== */
/* 접힌 상태에서 본문 숨김 */
.mw-parser-output .mw-fold-collapsed + .mw-fold-content {
  display: none;
}
/* 기본: 아이콘 없으면 패딩 없음 */
.mw-parser-output h2,
.mw-parser-output h3,
.mw-parser-output h4,
.mw-parser-output h5 {
  position: relative;
  padding-left: 0;
}
/* JS가 붙이는 클래스(.mw-has-fold-icon)로 아이콘 자리만 확보 */
.mw-parser-output h2.mw-has-fold-icon,
.mw-parser-output h3.mw-has-fold-icon,
.mw-parser-output h4.mw-has-fold-icon,
.mw-parser-output h5.mw-has-fold-icon {
  padding-left: 26px;
}
}


/* 인포박스 제목 줄 */
/* 아이콘 */
body.skin-vector-2022 table.infobox-namu .infobox-title {
.mw-parser-output .mw-fold-icon {
   text-align: center;
   position: absolute;
   font-weight: 800;
  left: 0;
   padding: 4px 0 10px 0;
  top: 50%;
  width: 20px;
  height: 20px;
 
  transform: translateY(-50%) rotate(90deg); /* 기본: 펼침 */
  transform-origin: 50% 50%;
   transition: transform 150ms ease;
 
   background: no-repeat center / contain
    url("https://interior.wiki/images/thumb/e/e3/Icon_caretright.png/600px-Icon_caretright.png?20260120083456");
}
}


/* 3) mw-collapsible(접기) 스타일: 테두리/배경 제거 */
/* 접힘 상태 → 오른쪽 */
body.skin-vector-2022 table.mw-collapsible,
.mw-parser-output .mw-fold-collapsed .mw-fold-icon {
body.skin-vector-2022 table.mw-collapsible th,
   transform: translateY(-50%) rotate(0deg);
body.skin-vector-2022 table.mw-collapsible td {
   border: 0 !important;
  background: transparent !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
}


/* 4) 접기 토글을 제목 왼쪽으로 */
/* ===============================
body.skin-vector-2022 table.mw-collapsible span.mw-collapsible-toggle {
  TOC(목차) 번호 표시
  float: left;
  - Vector 2022(.vector-toc)
  margin: 0 8px 0 0;
  - 구형 TOC(#toc/.toc)
  font-size: inherit;
  - 중복 tocnumber 숨김
   line-height: inherit;
  =============================== */
 
/* 구형 TOC 기본 숫자 숨김(중복 방지) */
#toc .tocnumber,
.toc .tocnumber { display: none; }
 
/* Vector 2022 TOC: Top(처음 위치) 항목 숨김 */
.vector-toc a[href="#top"],
.vector-toc a[href="#mw-head"],
.vector-toc a[href^="#mw-head"],
.vector-toc a[rel="mw:PageProp/TOC"] {
   display: none !important;
}
}


body.skin-vector-2022 table.mw-collapsible span.mw-collapsible-toggle a {
/* Vector 2022: 카운터 초기화 */
  text-decoration: none;
.vector-toc { counter-reset: toc2; }
  font-weight: 700;
.vector-toc .vector-toc-level-1 { counter-reset: toc3; }
   color: inherit;
.vector-toc .vector-toc-level-2 { counter-reset: toc4; }
   background: none;
.vector-toc .vector-toc-level-3 { counter-reset: toc5; }
   border: 0;
 
   padding: 0;
/* 레벨1(h2): 1. */
.vector-toc .vector-toc-level-1 > a .vector-toc-text::before {
   counter-increment: toc2;
   content: counter(toc2) ". ";
   margin-right: 2px;
   font-weight: 600;
}
}


/* 5) 모바일에서는 TOC/인포박스 float 해제(깨짐 방지) */
/* 레벨2(h3): 1.1 */
@media (max-width: 720px) {
.vector-toc .vector-toc-level-2 > a .vector-toc-text::before {
  body.skin-vector-2022 #toc,
  counter-increment: toc3;
  body.skin-vector-2022 .toc {
  content: counter(toc2) "." counter(toc3) " ";
    float: none;
  margin-right: 2px;
    width: auto;
  font-weight: 500;
    margin: 0 0 12px 0;
}
    padding: 0;
  }


  body.skin-vector-2022 table.infobox-namu {
/* 레벨3(h4): 1.1.1 */
    float: none;
.vector-toc .vector-toc-level-3 > a .vector-toc-text::before {
    width: 100%;
  counter-increment: toc4;
    margin: 0 0 12px 0;
  content: counter(toc2) "." counter(toc3) "." counter(toc4) " ";
   }
  margin-right: 2px;
   font-weight: 400;
}
}


/* =========================================================
/* 레벨4(h5): 1.1.1.1 */
  - Typography / spacing
.vector-toc .vector-toc-level-4 > a .vector-toc-text::before {
  - Links
  counter-increment: toc5;
  - Headings
  content: counter(toc2) "." counter(toc3) "." counter(toc4) "." counter(toc5) " ";
  - TOC left box
  margin-right: 2px;
  - Infobox right
  font-weight: 400;
  - Collapsible look
}
  ========================================================= */


body.skin-vector-2022 .mw-body-content {
/* 최상위(=h2 레벨)에서 첫 항목(처음 위치)만 숨김 */
  font-size: 15px;
.vector-toc li.vector-toc-level-1:first-child {
   line-height: 1.75;
   display: none !important;
}
}


/* 문단/목록 간격 */
/* ---- 구형 TOC(#toc/.toc) 번호 ---- */
body.skin-vector-2022 .mw-parser-output p { margin: 0.65em 0; }
#toc,
body.skin-vector-2022 .mw-parser-output ul,
.toc { counter-reset: toc1; }
body.skin-vector-2022 .mw-parser-output ol { margin: 0.6em 0 0.9em 1.2em; }
body.skin-vector-2022 .mw-parser-output li { margin: 0.15em 0; }


/* 제목 간격/굵기 */
#toc .toclevel-1,
body.skin-vector-2022 .mw-parser-output h1,
.toc .toclevel-1 { counter-reset: toc2; }
body.skin-vector-2022 .mw-parser-output h2,
 
body.skin-vector-2022 .mw-parser-output h3,
#toc .toclevel-2,
body.skin-vector-2022 .mw-parser-output h4 {
.toc .toclevel-2 { counter-reset: toc3; }
   font-weight: 700;
 
   border-bottom: none;
#toc .toclevel-3,
.toc .toclevel-3 { counter-reset: toc4; }
 
/* 1단계 */
#toc .toclevel-1 > a .toctext::before,
.toc .toclevel-1 > a .toctext::before {
  counter-increment: toc1;
  content: counter(toc1) ". ";
  margin-right: 2px;
}
 
/* 2단계 */
#toc .toclevel-2 > a .toctext::before,
.toc .toclevel-2 > a .toctext::before {
   counter-increment: toc2;
  content: counter(toc1) "." counter(toc2) " ";
   margin-right: 2px;
}
}


body.skin-vector-2022 .mw-parser-output h1 { font-size: 1.6em; margin: 1.0em 0 0.55em; }
/* 3단계 */
body.skin-vector-2022 .mw-parser-output h2 { font-size: 1.35em; margin: 1.1em 0 0.55em; }
#toc .toclevel-3 > a .toctext::before,
body.skin-vector-2022 .mw-parser-output h3 { font-size: 1.15em; margin: 0.95em 0 0.5em; }
.toc .toclevel-3 > a .toctext::before {
body.skin-vector-2022 .mw-parser-output h4 { font-size: 1.05em; margin: 0.85em 0 0.45em; }
  counter-increment: toc3;
  content: counter(toc1) "." counter(toc2) "." counter(toc3) " ";
  margin-right: 2px;
}


/* 링크 색/hover */
/* 4단계(h5) */
body.skin-vector-2022 .mw-parser-output a {
#toc .toclevel-4 > a .toctext::before,
   text-decoration: none;
.toc .toclevel-4 > a .toctext::before {
   counter-increment: toc4;
  content: counter(toc1) "." counter(toc2) "." counter(toc3) "." counter(toc4) " ";
  margin-right: 2px;
}
}
body.skin-vector-2022 .mw-parser-output a:hover {
 
   text-decoration: underline;
/* TOC 토글 숨김(원본 유지) */
span.toctogglespan { display: none; }
 
/* ✅ Minerva에서는 TOC 토글(목차 열기 UI)이 필요할 수 있으니 복원 */
body.skin-minerva span.toctogglespan { display: inline !important; }
 
h2#mw-toc-heading { margin: 4px 0 8px; }
 
/* ===============================
  Sticky header 폰트 (Vector 2022)
  =============================== */
.vector-sticky-header-context-bar-primary,
.vector-sticky-header-context-bar-primary a,
.vector-sticky-header-context-bar-primary span {
   font-family: 'Inter', -apple-system, BlinkMacSystemFont,
              'Apple SD Gothic Neo', 'Noto Sans KR',
              system-ui, sans-serif !important;
}
}


/* =========================================================
/* ===============================
   TOC (목차) - 왼쪽 박스형
   레거시 Vector: TOC(좌) + 인포박스(우)
   ========================================================= */
   =============================== */
body.skin-vector-2022 #toc,
body.skin-vector:not(.skin-vector-2022) #toc.toc {
body.skin-vector-2022 .toc {
   float: left;
   float: left;
  width: 230px;
   margin: 0 16px 12px 0;
   margin: 0 16px 16px 0;
  padding: 10px 12px;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 6px;
  background: rgba(0,0,0,0.02);
  font-size: 0.95em;
}
}


body.skin-vector-2022 #toc .toctitle,
body.skin-vector:not(.skin-vector-2022) .iw-matbox,
body.skin-vector-2022 .toc .toctitle {
body.skin-vector:not(.skin-vector-2022) table.wikitable[style*="float:right"] {
   text-align: left;
   width: 360px;
   margin: 0 0 8px 0;
   margin-bottom: 12px;
}
}
body.skin-vector-2022 #toc .toctitle h2,
 
body.skin-vector-2022 .toc .toctitle h2 {
body.skin-vector:not(.skin-vector-2022) .iw-topclear {
   font-size: 1.0em;
   clear: both;
  font-weight: 800;
   height: 8px;
   margin: 0;
}
}


/* 목차 번호/들여쓰기 정리 */
/* ===============================
body.skin-vector-2022 #toc ul,
  하단 분류 박스
body.skin-vector-2022 .toc ul {
  =============================== */
   margin: 0;
div#catlinks.catlinks {
   padding-left: 1.1em;
   margin-top: 80px;
   padding: 4px 8px;
  font-size: 14px;
  background: #fff;
  border-radius: 4px;
}
}
body.skin-vector-2022 #toc li,
body.skin-vector-2022 .toc li { margin: 0.15em 0; }


/* =========================================================
/* 레거시 Vector: TOC 옆으로 본문 텍스트가 말려 올라오는 현상 방지 */
  Infobox (오른쪽)
body.skin-vector:not(.skin-vector-2022) #toc.toc + h2,
  문서에서 class="infobox-namu" 사용
body.skin-vector:not(.skin-vector-2022) .toc + h2 {
  ========================================================= */
   clear: left;
body.skin-vector-2022 table.infobox-namu {
  float: right;
  width: 330px;
  margin: 0 0 16px 16px;
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 8px;
  background: rgba(0,0,0,0.01);
  border-collapse: separate;
  overflow: hidden;
  font-size: 0.95em;
   line-height: 1.55;
}
}


body.skin-vector-2022 table.infobox-namu th,
/* TOC 제목 접기 아이콘 완전 제거 */
body.skin-vector-2022 table.infobox-namu td {
#mw-toc-heading .mw-fold-icon {
   border: 0;
   display: none !important;
  background: transparent;
  padding: 6px 10px;
  vertical-align: top;
}
}


body.skin-vector-2022 table.infobox-namu th {
/* 아이콘 공간 때문에 생긴 왼쪽 여백 제거 */
   width: 92px;
#mw-toc-heading.mw-has-fold-icon,
   font-weight: 700;
#mw-toc-heading.mw-fold-has-content {
   white-space: nowrap;
   padding-left: 0 !important;
  opacity: 0.9;
   margin-left: 0 !important;
   text-indent: 0 !important;
}
}


body.skin-vector-2022 table.infobox-namu .infobox-title {
/* 가상요소까지 제거 */
  text-align: center;
#mw-toc-heading::before,
  font-weight: 900;
#mw-toc-heading::after {
  font-size: 1.05em;
   content: none !important;
  padding: 10px 10px 6px;
   background: rgba(0,0,0,0.03);
}
}


body.skin-vector-2022 table.infobox-namu .infobox-image {
/* 도움말 문서: 헤더 편집 링크 전체 숨김 */
   text-align: center;
.ns-12 .mw-editsection {
  padding: 6px 10px 10px;
   display: none;
}
}


/* =========================================================
/* 1) TOC(목차) 내부는 무조건 불릿 제거 */
  Collapsible (mw-collapsible)
#toc ul, .toc ul {
  ========================================================= */
  list-style: none !important;
  list-style-image: none !important;
}
#toc li::marker, .toc li::marker {
  content: "" !important;
}


/* 표 특유 배경/테두리 제거(접기 전용 표) */
/* 2) 본문 ul 중에서 "TOC 안에 있는 ul"만 제외하고 적용 */
body.skin-vector-2022 table.mw-collapsible,
#mw-content-text .mw-parser-output ul:not(#toc ul):not(.toc ul) {
body.skin-vector-2022 table.mw-collapsible th,
  list-style-image: none !important;
body.skin-vector-2022 table.mw-collapsible td {
  list-style-type: disc !important;
   border: 0 !important;
}
   background: transparent !important;
#mw-content-text .mw-parser-output ul:not(#toc ul):not(.toc ul) ul {
   list-style-type: circle !important;
}
#mw-content-text .mw-parser-output ul:not(#toc ul):not(.toc ul) ul ul {
   list-style-type: square !important;
}
}


/* 토글을 제목 왼쪽으로 */
/* 대문에서만 내부 링크 색상 */
body.skin-vector-2022 table.mw-collapsible span.mw-collapsible-toggle {
body.page-대문 .mw-parser-output a:not(.new) {
   float: left;
   color: #202122;
  margin: 0 8px 0 0;
  font-size: inherit;
  line-height: inherit;
}
}


body.skin-vector-2022 table.mw-collapsible span.mw-collapsible-toggle a {
body.page-대문 .mw-parser-output a:not(.new):visited {
  text-decoration: none;
   color: #202122;
  font-weight: 800;
   color: inherit;
}
}


/* 접기 헤더(!)를 ‘본문 제목 줄’처럼 보이게 */
body.page-대문 .mw-parser-output a:not(.new):hover {
body.skin-vector-2022 table.mw-collapsible > tbody > tr:first-child > th {
   color: #202122;
   text-align: left;
   text-decoration: underline;
   font-weight: 700;
  padding: 0;           /* 장식 최소화 */
}
}


/* 접기 내용(td) 여백 */
/* 빨간 링크 */
body.skin-vector-2022 table.mw-collapsible > tbody > tr:nth-child(2) > td {
body.page-대문 .mw-parser-output a.new {
   padding: 6px 0 10px 0;
   color: #d32f2f;
}
}


/* =========================================================
/* ===============================
   Quotes / Code blocks - 과한 스타일 제거
   로고수정
   ========================================================= */
   =============================== */
body.skin-vector-2022 blockquote {
 
   margin: 0.8em 0;
#p-logo .mw-wiki-logo {
   padding: 0.6em 0.9em;
   width: auto !important;
  border-left: 4px solid rgba(0,0,0,0.12);
   height: auto !important;
  background: rgba(0,0,0,0.02);
}
}


body.skin-vector-2022 pre,
#p-logo .mw-wiki-logo::after {
body.skin-vector-2022 code {
  content: "인테리어 위키";
   font-size: 0.95em;
   font-size: 20px;
  font-weight: 600;
  color: #1f2937;
  line-height: 1;
}
}


/* =========================================================
#p-logo {
  Mobile safety: float 해제
   padding-left: 16px;
  ========================================================= */
   padding-top: 16px;
@media (max-width: 720px) {
  height: 48px;
   body.skin-vector-2022 #toc,
  align-items: center !important;
   body.skin-vector-2022 .toc {
}
    float: none;
    width: auto;
    margin: 0 0 12px 0;
  }


  body.skin-vector-2022 table.infobox-namu {
#p-logo a {
    float: none;
  display: flex;
    width: 100%;
  align-items: center;
    margin: 0 0 12px 0;
  text-decoration: none;
  }
}
}

2026년 1월 28일 (수) 07:47 기준 최신판

/* 이 CSS 설정은 모든 스킨에 적용됩니다 */

/* ===============================
   Google Fonts: Inter
   =============================== */
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

/* ===============================
   기본 폰트
   =============================== */
.mw-parser-output {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont,
               'Apple SD Gothic Neo', 'Noto Sans KR',
               system-ui, sans-serif;
}

/* 문서 제목 + 섹션 제목 */
#firstHeading,
.mw-parser-output h2,
.mw-parser-output h3,
.mw-parser-output h4,
.mw-parser-output h5 {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont,
               'Apple SD Gothic Neo', 'Noto Sans KR',
               system-ui, sans-serif;
}

/* ===============================
   Heading 번호 매기기 (h2 ~ h5)
   1.
   1.1
   1.1.1
   1.1.1.1
   =============================== */

/* h2 기준 카운터 초기화 */
.mw-parser-output { counter-reset: h2; }

/* ---------- h2 ---------- */
.mw-parser-output h2 {
  counter-reset: h3;
  font-size: 27px;
  font-weight: 500;
}
.mw-parser-output h2 .mw-headline::before {
  counter-increment: h2;
  content: counter(h2) ". ";
  margin-right: 2px;
  font-size: 27px;
  font-weight: 500;
}

/* ---------- h3 ---------- */
.mw-parser-output h3 {
  counter-reset: h4;
  font-size: 22px;
  font-weight: 500;
}
.mw-parser-output h3 .mw-headline::before {
  counter-increment: h3;
  content: counter(h2) "." counter(h3) " ";
  margin-right: 2px;
  font-size: 22px;
  font-weight: 500;
}

/* ---------- h4 ---------- */
.mw-parser-output h4 {
  counter-reset: h5;
  font-size: 20px;
  font-weight: 500;
}
.mw-parser-output h4 .mw-headline::before {
  counter-increment: h4;
  content: counter(h2) "." counter(h3) "." counter(h4) " ";
  margin-right: 2px;
  font-size: 20px;
  font-weight: 500;
}

/* ---------- h5 ---------- */
.mw-parser-output h5 {
  font-size: 18px;
  font-weight: 500;
}
.mw-parser-output h5 .mw-headline::before {
  counter-increment: h5;
  content: counter(h2) "." counter(h3) "." counter(h4) "." counter(h5) " ";
  margin-right: 2px;
  font-size: 18px;
  font-weight: 500;
}

/* ===============================
   Heading 하단 구분선 + 여백 (h2 ~ h5)
   =============================== */
.mw-parser-output h1,
.mw-parser-output h2,
.mw-parser-output h3,
.mw-parser-output h4,
.mw-parser-output h5 {
  border-bottom: 1px solid #ccc;
  padding-bottom: 5px;
  margin: 1.2em 0 0.8em;

  /* 접기 UX */
  cursor: pointer;
}

/* ===============================
   Heading 제목 ↔ 편집 링크 정렬
   - :has() 제거
   - 기본: flex-start
   - JS가 .mw-has-editsection 클래스를 붙이면 space-between
   =============================== */
.mw-parser-output h1,
.mw-parser-output h2,
.mw-parser-output h3,
.mw-parser-output h4,
.mw-parser-output h5 {
  display: flex;
  align-items: center;
  justify-content: flex-start; /* 기본 */
}

/* 제목 텍스트 */
.mw-parser-output .mw-headline {
  flex: 1 1 auto;
  min-width: 0; /* 긴 제목 줄바꿈 안정화 */
}

/* 편집 링크 */
.mw-parser-output .mw-editsection {
  flex: 0 0 auto;
  font-size: 12px;
  white-space: nowrap;
  margin-left: 12px;
}

/* 편집 링크가 있을 때만 양끝 정렬 (JS가 클래스 부여) */
.mw-parser-output h2.mw-has-editsection,
.mw-parser-output h3.mw-has-editsection,
.mw-parser-output h4.mw-has-editsection,
.mw-parser-output h5.mw-has-editsection {
  justify-content: space-between;
}

/* ===============================
   [편집 | 원본편집] → [편집]
   =============================== */

/* '원본 편집' 링크 숨김 */
.mw-editsection a:last-of-type { display: none; }

/* 구분자(|) 숨김 */
.mw-editsection .mw-editsection-divider { display: none; }

/* ===============================
   접기/펼치기 (h2~h5)
   - JS가 h2~h5에 아이콘(.mw-fold-icon)을 직계 자식으로 prepend
   - 접힌 상태: .mw-fold-collapsed
   =============================== */

/* 접힌 상태에서 본문 숨김 */
.mw-parser-output .mw-fold-collapsed + .mw-fold-content {
  display: none;
}

/* 기본: 아이콘 없으면 패딩 없음 */
.mw-parser-output h2,
.mw-parser-output h3,
.mw-parser-output h4,
.mw-parser-output h5 {
  position: relative;
  padding-left: 0;
}

/* JS가 붙이는 클래스(.mw-has-fold-icon)로 아이콘 자리만 확보 */
.mw-parser-output h2.mw-has-fold-icon,
.mw-parser-output h3.mw-has-fold-icon,
.mw-parser-output h4.mw-has-fold-icon,
.mw-parser-output h5.mw-has-fold-icon {
  padding-left: 26px;
}

/* 아이콘 */
.mw-parser-output .mw-fold-icon {
  position: absolute;
  left: 0;
  top: 50%;
  width: 20px;
  height: 20px;

  transform: translateY(-50%) rotate(90deg); /* 기본: 펼침 */
  transform-origin: 50% 50%;
  transition: transform 150ms ease;

  background: no-repeat center / contain
    url("https://interior.wiki/images/thumb/e/e3/Icon_caretright.png/600px-Icon_caretright.png?20260120083456");
}

/* 접힘 상태 → 오른쪽 */
.mw-parser-output .mw-fold-collapsed .mw-fold-icon {
  transform: translateY(-50%) rotate(0deg);
}

/* ===============================
   TOC(목차) 번호 표시
   - Vector 2022(.vector-toc)
   - 구형 TOC(#toc/.toc)
   - 중복 tocnumber 숨김
   =============================== */

/* 구형 TOC 기본 숫자 숨김(중복 방지) */
#toc .tocnumber,
.toc .tocnumber { display: none; }

/* Vector 2022 TOC: Top(처음 위치) 항목 숨김 */
.vector-toc a[href="#top"],
.vector-toc a[href="#mw-head"],
.vector-toc a[href^="#mw-head"],
.vector-toc a[rel="mw:PageProp/TOC"] {
  display: none !important;
}

/* Vector 2022: 카운터 초기화 */
.vector-toc { counter-reset: toc2; }
.vector-toc .vector-toc-level-1 { counter-reset: toc3; }
.vector-toc .vector-toc-level-2 { counter-reset: toc4; }
.vector-toc .vector-toc-level-3 { counter-reset: toc5; }

/* 레벨1(h2): 1. */
.vector-toc .vector-toc-level-1 > a .vector-toc-text::before {
  counter-increment: toc2;
  content: counter(toc2) ". ";
  margin-right: 2px;
  font-weight: 600;
}

/* 레벨2(h3): 1.1 */
.vector-toc .vector-toc-level-2 > a .vector-toc-text::before {
  counter-increment: toc3;
  content: counter(toc2) "." counter(toc3) " ";
  margin-right: 2px;
  font-weight: 500;
}

/* 레벨3(h4): 1.1.1 */
.vector-toc .vector-toc-level-3 > a .vector-toc-text::before {
  counter-increment: toc4;
  content: counter(toc2) "." counter(toc3) "." counter(toc4) " ";
  margin-right: 2px;
  font-weight: 400;
}

/* 레벨4(h5): 1.1.1.1 */
.vector-toc .vector-toc-level-4 > a .vector-toc-text::before {
  counter-increment: toc5;
  content: counter(toc2) "." counter(toc3) "." counter(toc4) "." counter(toc5) " ";
  margin-right: 2px;
  font-weight: 400;
}

/* 최상위(=h2 레벨)에서 첫 항목(처음 위치)만 숨김 */
.vector-toc li.vector-toc-level-1:first-child {
  display: none !important;
}

/* ---- 구형 TOC(#toc/.toc) 번호 ---- */
#toc,
.toc { counter-reset: toc1; }

#toc .toclevel-1,
.toc .toclevel-1 { counter-reset: toc2; }

#toc .toclevel-2,
.toc .toclevel-2 { counter-reset: toc3; }

#toc .toclevel-3,
.toc .toclevel-3 { counter-reset: toc4; }

/* 1단계 */
#toc .toclevel-1 > a .toctext::before,
.toc .toclevel-1 > a .toctext::before {
  counter-increment: toc1;
  content: counter(toc1) ". ";
  margin-right: 2px;
}

/* 2단계 */
#toc .toclevel-2 > a .toctext::before,
.toc .toclevel-2 > a .toctext::before {
  counter-increment: toc2;
  content: counter(toc1) "." counter(toc2) " ";
  margin-right: 2px;
}

/* 3단계 */
#toc .toclevel-3 > a .toctext::before,
.toc .toclevel-3 > a .toctext::before {
  counter-increment: toc3;
  content: counter(toc1) "." counter(toc2) "." counter(toc3) " ";
  margin-right: 2px;
}

/* 4단계(h5) */
#toc .toclevel-4 > a .toctext::before,
.toc .toclevel-4 > a .toctext::before {
  counter-increment: toc4;
  content: counter(toc1) "." counter(toc2) "." counter(toc3) "." counter(toc4) " ";
  margin-right: 2px;
}

/* TOC 토글 숨김(원본 유지) */
span.toctogglespan { display: none; }

/* ✅ Minerva에서는 TOC 토글(목차 열기 UI)이 필요할 수 있으니 복원 */
body.skin-minerva span.toctogglespan { display: inline !important; }

h2#mw-toc-heading { margin: 4px 0 8px; }

/* ===============================
   Sticky header 폰트 (Vector 2022)
   =============================== */
.vector-sticky-header-context-bar-primary,
.vector-sticky-header-context-bar-primary a,
.vector-sticky-header-context-bar-primary span {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont,
               'Apple SD Gothic Neo', 'Noto Sans KR',
               system-ui, sans-serif !important;
}

/* ===============================
   레거시 Vector: TOC(좌) + 인포박스(우)
   =============================== */
body.skin-vector:not(.skin-vector-2022) #toc.toc {
  float: left;
  margin: 0 16px 12px 0;
}

body.skin-vector:not(.skin-vector-2022) .iw-matbox,
body.skin-vector:not(.skin-vector-2022) table.wikitable[style*="float:right"] {
  width: 360px;
  margin-bottom: 12px;
}

body.skin-vector:not(.skin-vector-2022) .iw-topclear {
  clear: both;
  height: 8px;
}

/* ===============================
   하단 분류 박스
   =============================== */
div#catlinks.catlinks {
  margin-top: 80px;
  padding: 4px 8px;
  font-size: 14px;
  background: #fff;
  border-radius: 4px;
}

/* 레거시 Vector: TOC 옆으로 본문 텍스트가 말려 올라오는 현상 방지 */
body.skin-vector:not(.skin-vector-2022) #toc.toc + h2,
body.skin-vector:not(.skin-vector-2022) .toc + h2 {
  clear: left;
}

/* TOC 제목 접기 아이콘 완전 제거 */
#mw-toc-heading .mw-fold-icon {
  display: none !important;
}

/* 아이콘 공간 때문에 생긴 왼쪽 여백 제거 */
#mw-toc-heading.mw-has-fold-icon,
#mw-toc-heading.mw-fold-has-content {
  padding-left: 0 !important;
  margin-left: 0 !important;
  text-indent: 0 !important;
}

/* 가상요소까지 제거 */
#mw-toc-heading::before,
#mw-toc-heading::after {
  content: none !important;
}

/* 도움말 문서: 헤더 편집 링크 전체 숨김 */
.ns-12 .mw-editsection {
  display: none;
}

/* 1) TOC(목차) 내부는 무조건 불릿 제거 */
#toc ul, .toc ul {
  list-style: none !important;
  list-style-image: none !important;
}
#toc li::marker, .toc li::marker {
  content: "" !important;
}

/* 2) 본문 ul 중에서 "TOC 안에 있는 ul"만 제외하고 적용 */
#mw-content-text .mw-parser-output ul:not(#toc ul):not(.toc ul) {
  list-style-image: none !important;
  list-style-type: disc !important;
}
#mw-content-text .mw-parser-output ul:not(#toc ul):not(.toc ul) ul {
  list-style-type: circle !important;
}
#mw-content-text .mw-parser-output ul:not(#toc ul):not(.toc ul) ul ul {
  list-style-type: square !important;
}

/* 대문에서만 내부 링크 색상 */
body.page-대문 .mw-parser-output a:not(.new) {
  color: #202122;
}

body.page-대문 .mw-parser-output a:not(.new):visited {
  color: #202122;
}

body.page-대문 .mw-parser-output a:not(.new):hover {
  color: #202122;
  text-decoration: underline;
}

/* 빨간 링크 */
body.page-대문 .mw-parser-output a.new {
  color: #d32f2f;
}

/* ===============================
   로고수정
   =============================== */

#p-logo .mw-wiki-logo {
  width: auto !important;
  height: auto !important;
}

#p-logo .mw-wiki-logo::after {
  content: "인테리어 위키";
  font-size: 20px;
  font-weight: 600;
  color: #1f2937;
  line-height: 1;
}

#p-logo {
  padding-left: 16px;
  padding-top: 16px;
  height: 48px;
  align-items: center !important;
}

#p-logo a {
  display: flex;
  align-items: center;
  text-decoration: none;
}