/* ridlab base styles — 따뜻한 에디토리얼 (시안 v3). tokens.css 먼저 로드. */

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scrollbar-gutter:stable;}
/* ↑ 스크롤바 공간을 항상 예약 — 짧은 페이지(스크롤바 없음)와 긴 페이지 간
   중앙정렬 콘텐츠·헤더가 좌우로 밀리는 현상(스크롤바 reflow) 방지 */

/* --- 접근성 --- */
:focus-visible{outline:2px solid var(--c-open);outline-offset:2px;border-radius:2px;}
main:focus{outline:none;}
.skip-link{
  position:absolute;left:8px;top:-48px;z-index:1000;
  background:var(--ink);color:#fff;padding:.6em 1em;border-radius:var(--r-sm);
  text-decoration:none;transition:top .15s ease;
}
.skip-link:focus{top:8px;}
.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
body{
  margin:0;
  font-family:var(--sans);
  color:var(--ink);
  font-size:17px;
  line-height:1.65;
  /* 아이보리 위 미묘한 라디얼 그라데이션 (시안 참조) */
  background-color:var(--paper);
  background-image:
    radial-gradient(1100px 620px at 78% -8%, var(--surface-2) 0%, rgba(247,242,233,0) 60%),
    radial-gradient(900px 560px at 8% 4%, var(--surface) 0%, rgba(252,251,247,0) 55%);
  background-attachment:fixed;
  min-height:100vh;
  display:flex;flex-direction:column;
}

/* --- 타이포 (모던: 굵은 산세리프 헤딩 + 인디고) --- */
h1,h2,h3,h4,.display{font-family:var(--sans);color:var(--indigo);line-height:1.14;font-weight:800;letter-spacing:-.02em;}
h1{font-size:clamp(2.1rem,4.6vw,3.3rem);margin:0 0 .5em;}
h2{font-size:clamp(1.5rem,2.8vw,2.1rem);margin:0 0 .5em;}
h3{font-size:1.28rem;font-weight:700;margin:0 0 .4em;}
p{margin:0 0 1em;}
a{color:var(--violet);text-decoration:none;}
a:hover{text-decoration:underline;}
.muted{color:var(--muted);}
.lead{font-size:1.18rem;color:var(--ink-soft);}

/* --- 레이아웃 --- */
.container{width:100%;max-width:1120px;margin-inline:auto;padding-inline:24px;}
/* CC BY 공식 아이콘(텍스트 'CC BY 4.0' 대체) — 본문 글자 크기에 맞춰 스케일 */
.ccby{display:inline-flex;align-items:center;gap:2px;vertical-align:middle;line-height:0;}
.ccby img{display:block;height:1.05em;width:auto;}
.ccby:hover{opacity:.78;}
/* 표준 콘텐츠 폭(--w-content) — 페이지 간 전환 시 프레임이 출렁이지 않게 단일 폭.
   hub=허브·목록, page=안내·검색 등 일반 페이지. 홈·헤더·푸터 셸만 .container 원폭(1120). */
.container.hub,.container.page{max-width:var(--w-content);}
main{flex:1 0 auto;}
section{padding-block:clamp(2.5rem,6vw,4.5rem);}

/* --- 버튼 --- */
.btn{
  display:inline-flex;align-items:center;gap:.5em;
  font-family:var(--sans);font-size:1rem;font-weight:700;line-height:1;
  padding:.82em 1.5em;border-radius:999px;
  border:1px solid transparent;cursor:pointer;transition:transform .12s ease,box-shadow .2s ease,background .2s ease;
  text-decoration:none;
}
.btn:hover{text-decoration:none;transform:translateY(-2px);box-shadow:var(--shadow-md);}
.btn-primary{background:var(--clay);color:#fff;box-shadow:0 14px 30px -14px var(--clay);}
.btn-primary:hover{background:var(--clay-deep);color:#fff;}
.btn-ghost{background:var(--surface);color:var(--indigo);border-color:var(--violet-soft);}
.btn-ghost:hover{background:var(--surface);border-color:var(--violet);}

/* --- 3계층 칩 --- */
.chip{
  display:inline-flex;align-items:center;gap:.4em;
  font-size:.78rem;font-weight:600;letter-spacing:.01em;
  padding:.28em .7em;border-radius:999px;line-height:1;
}
.chip-open{background:var(--c-open-bg);color:var(--c-open);}
.chip-part{background:var(--c-part-bg);color:var(--c-part);}
.chip-collab{background:var(--c-collab-bg);color:var(--c-collab);}
/* 진단 깊이(L0~L4) 뱃지 — 중립(서열 아님, §11). 색이 아닌 라벨로 단계만 표시. */
.chip-level{background:var(--surface-2);color:var(--ink-soft);border:1px solid var(--line);}

/* --- 헤더 / 전역 내비 (§8) --- */
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.85);backdrop-filter:saturate(1.1) blur(8px);
  border-bottom:1px solid var(--line);
}
.site-header__row{display:flex;align-items:center;gap:1.5rem;padding-block:.85rem;}
/* 로고 = 심볼 마크(이미지) + 워드마크(텍스트). 워드마크가 메뉴와 같은 텍스트 레이아웃이라
   '지역혁신데이터랩' 글자가 메뉴 글자와 자동으로 같은 높이에 정렬된다. 전체 로고 아트는 /ci/. */
.brand{display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap;text-decoration:none;}
.brand:hover{text-decoration:none;}
.brand-sym{display:block;height:38px;width:auto;flex:none;}
.brand-wm{font-family:var(--sans);font-weight:800;font-size:1.16rem;letter-spacing:-.04em;line-height:1;}
.brand-wm .n{color:var(--ci-navy);}
.brand-wm .c{color:var(--ci-coral);}
/* 메뉴를 살짝 내려 로고 워드마크 글자줄(베이스라인)과 평행하게 맞춤 */
.nav{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem 1.05rem;flex:1;transform:translateY(3px);}
@media(max-width:880px){.nav{transform:none;}}
.nav a{
  color:var(--ink-soft);font-size:.95rem;font-weight:500;padding:.25em 0;
  border-bottom:2px solid transparent;
}
.nav a:hover{text-decoration:none;color:var(--ink);}
/* 계층 의미를 하단 보더 색으로 (공개/참여/협력) */
.nav a[data-tier="open"]:hover{border-bottom-color:var(--c-open);}
.nav a[data-tier="part"]:hover{border-bottom-color:var(--c-part);}
.nav a[data-tier="collab"]:hover{border-bottom-color:var(--c-collab);}
/* 방법론 드롭다운 (혁신모델·자가진단·도구세트·원인) — CSS 전용, 키보드 접근 */
.nav-dd{position:relative;}
.nav-dd>.nav-dd-toggle{display:inline-flex;align-items:center;gap:.2em;}
.nav-dd-menu{
  display:none;position:absolute;top:100%;left:0;z-index:30;min-width:13rem;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);
  box-shadow:var(--shadow-md);padding:.4rem;margin-top:.45rem;
}
/* 토글↔메뉴 사이 빈 틈을 투명 브리지로 이어 호버 끊김 방지(다른 메뉴 오선택 차단) */
.nav-dd-menu::before{content:"";position:absolute;left:0;right:0;top:-.55rem;height:.55rem;}
.nav-dd:hover>.nav-dd-menu,.nav-dd:focus-within>.nav-dd-menu{display:block;}
.nav-dd-menu a{display:block;padding:.45rem .6rem;border-radius:var(--r-sm);border-bottom:0;font-size:.9rem;}
.nav-dd-menu a:hover{background:var(--surface-2);color:var(--ink);}
@media (max-width:880px){.nav-dd-menu{position:static;box-shadow:none;border:0;padding:.2rem 0 .2rem 1rem;display:block;}.nav-dd-menu::before{display:none;}}
/* 필요 중심 드롭다운(제목+부제) */
.nav-dd-menu--rich{min-width:16rem;}
.nav-dd-menu--rich a{padding:.5rem .7rem;}
.nav-dd-menu--rich a b{display:block;font-weight:700;color:var(--ink);font-size:.92rem;}
.nav-dd-menu--rich a small{display:block;color:var(--muted);font-size:.78rem;margin-top:.05rem;}
.nav-dd-menu--rich a:hover b{color:var(--violet);}
/* ③ 사례·자료 구획 소제목(근거/읽을거리) + 브론즈 구분선 */
.nav-dd-section{display:block;font-size:.72rem;font-weight:800;color:var(--brass);
  letter-spacing:.02em;padding:.45rem .7rem .2rem;}
.nav-dd-menu--rich .nav-dd-section:not(:first-child){
  border-top:1px solid var(--brass-tint);margin-top:.35rem;padding-top:.5rem;}

.nav-utility{display:flex;align-items:center;gap:.6rem;white-space:nowrap;}
.nav-utility a{font-size:.9rem;font-weight:600;color:var(--ink-soft);}
.nav-utility a:hover{text-decoration:none;color:var(--ink);}
.nav-utility .util-sep{color:var(--faint);font-weight:400;user-select:none;}
.nav-search input{
  font-family:var(--sans);font-size:.85rem;
  padding:.4em .8em;border:1px solid var(--line);border-radius:999px;
  background:var(--surface);color:var(--ink);width:8.5rem;max-width:38vw;
}
.nav-search input:focus{outline:2px solid var(--c-open);outline-offset:1px;}

/* --- 모바일 메뉴 토글(햄버거, ≤880px) --- */
.nav-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;flex:none;
  border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);cursor:pointer;}
.nav-toggle__bars,.nav-toggle__bars::before,.nav-toggle__bars::after{
  display:block;width:20px;height:2px;background:var(--ink);border-radius:2px;transition:transform .18s ease,background .18s ease;}
.nav-toggle__bars{position:relative;}
.nav-toggle__bars::before,.nav-toggle__bars::after{content:"";position:absolute;left:0;}
.nav-toggle__bars::before{top:-6px;}
.nav-toggle__bars::after{top:6px;}
.site-header.nav-open .nav-toggle__bars{background:transparent;}
.site-header.nav-open .nav-toggle__bars::before{top:0;transform:rotate(45deg);}
.site-header.nav-open .nav-toggle__bars::after{top:0;transform:rotate(-45deg);}
@media (max-width:880px){
  .site-header__row{flex-wrap:wrap;column-gap:.75rem;row-gap:.4rem;}
  .nav-toggle{display:inline-flex;margin-left:auto;}
  .nav{display:none;order:3;flex-basis:100%;flex-direction:column;align-items:stretch;gap:.1rem;
    border-top:1px solid var(--line);margin-top:.4rem;padding-top:.5rem;}
  .nav-utility{display:none;order:4;flex-basis:100%;flex-wrap:wrap;gap:.9rem;padding:.2rem 0 .5rem;}
  .nav-utility .util-sep{display:none;}  /* 모바일선 줄바꿈되므로 구분자 숨김 */
  .site-header.nav-open .nav,.site-header.nav-open .nav-utility{display:flex;}
  .nav-dd{width:100%;}
  .nav-search{flex-basis:100%;}
  .nav-search input{width:100%;max-width:none;}
}

/* 섹션 헤더 (제목 + 전체보기) */
.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;}
.section-head h2{margin-bottom:.5rem;}

/* 검색 폼(검색 결과 페이지) */
.search-form{display:flex;gap:.6rem;margin:1.25rem 0 2rem;max-width:560px;}
.search-form input{
  flex:1;font-family:var(--sans);font-size:1rem;
  padding:.7em 1em;border:1px solid var(--line);border-radius:var(--r-md);
  background:var(--surface);color:var(--ink);
}
.pagination{display:flex;gap:1rem;align-items:center;margin-top:2rem;}
/* 검색 — 지역명 부분일치 안내(형태소 미지원 보완) */
.search-regions{margin:0 0 1.4rem;padding:.9rem 1.1rem;background:var(--c-open-bg);
  border:1px solid var(--line);border-radius:var(--r-md);}
.search-regions__label{margin:0 0 .5rem;font-size:.9rem;font-weight:600;color:var(--c-open);}
.search-regions__links{display:flex;flex-wrap:wrap;gap:.45rem .9rem;}
.search-regions__links a{font-size:.95rem;font-weight:600;color:var(--ink);text-decoration:none;
  border-bottom:1px solid var(--clay-soft);}
.search-regions__links a:hover{color:var(--clay-deep);}
.footer-links{margin-top:1.25rem;font-size:.85rem;}
.footer-links a{color:var(--ink-soft);}

/* --- 히어로 --- */
.hero{padding-block:clamp(3rem,7vw,5.5rem);}
.hero h1{max-width:18ch;}
.hero .lead{max-width:60ch;}
.hero__trust{
  max-width:60ch;color:var(--ink-soft);
  border-left:3px solid var(--brass-soft);padding-left:1rem;margin-top:1.5rem;
}
.hero__cta{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:2rem;}

/* --- 카드 / placeholder --- */
.grid{display:grid;gap:1.25rem;}
/* 공통 카드 그리드(인덱스·목록) — 인라인 grid-template 중복 제거 */
.grid--cards{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));}
.card{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);
  padding:1.5rem;box-shadow:var(--shadow-sm);
}
a.card{transition:transform .12s ease,box-shadow .2s ease;}
a.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);text-decoration:none;}
.placeholder{
  border:1px dashed var(--faint);border-radius:var(--r-lg);
  background:var(--surface-2);color:var(--muted);
  padding:2.5rem 1.5rem;text-align:center;
}

/* --- 푸터 (전 페이지 고정 §9) --- */
.site-footer{
  flex-shrink:0;margin-top:2rem;
  background:var(--paper-2);border-top:1px solid var(--line);
  color:var(--ink-soft);font-size:.92rem;
}
.site-footer .container{padding-block:2.5rem;}
.footer-notice{max-width:80ch;margin:0 0 1rem;}
.footer-license{color:var(--muted);font-size:.85rem;max-width:80ch;}
.footer-short{
  font-family:var(--serif);font-size:1.05rem;color:var(--ink);
  margin:0;
}
.footer-cta{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-bottom:1.5rem;}

/* --- 롱폼(소개·공개 선언) --- */
.longform__inner{max-width:var(--w-content);padding-block:clamp(2.5rem,6vw,4rem);}
.longform h1{font-size:clamp(2.2rem,5vw,3.2rem);margin-bottom:1.5rem;}
.longform .report-body{font-size:1.08rem;line-height:1.8;}

/* --- 소개(About) — 에디토리얼 매거진: 지면 카드 위 리듬 --- */
/* 표준 콘텐츠 폭 통일(2026-07-02) — 구 760px 개별 폭 폐지 */
.about__inner{max-width:var(--w-content);margin-inline:auto;}

/* 헤드 — 제목만(eyebrow 제거) + 짧은 clay rule */
.about__head{margin:0 0 1.5rem;}
.about h1{
  font-family:var(--serif);font-weight:700;
  font-size:clamp(2.1rem,5vw,3rem);line-height:1.15;
  color:var(--ink);margin:0;letter-spacing:-.01em;
}
.about__head::after{
  content:"";display:block;width:2.5rem;height:3px;margin-top:1rem;
  background:var(--clay);border-radius:2px;
}

/* 본문 전체를 하나의 아이보리 지면 카드로 앵커링 — 빈 페이지에 뜨지 않게 */
.about__body{
  position:relative;overflow:hidden;
  background:var(--surface);
  border:1px solid var(--line);border-radius:var(--r-lg);
  box-shadow:var(--shadow-md);
  padding:clamp(1.6rem,4vw,2.75rem) clamp(1.4rem,4vw,2.75rem);
}
/* 좌측 clay 세로 리본 — 편지지 여백선(브랜드 온기) */
.about__body::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:4px;
  background:linear-gradient(var(--clay),var(--clay-soft));
}

/* 본문 톤 */
.about__body .md-report{
  font-size:1.05rem;line-height:1.8;color:var(--ink-soft);
  word-break:keep-all;   /* 한글 어절 단위 줄바꿈(단어 중간 끊김 방지) */
}
/* 규칙적 여백 리듬 엔진 — 형제 간 기본 간격을 촘촘히 통일(성김 제거) */
.about__body .md-report>*{margin:0;}
.about__body .md-report>*+*{margin-top:.9rem;}
.about__body .md-report>:first-child{margin-top:0;}
.about__body .md-report>:last-child{margin-bottom:0;}

/* 리드 — 첫 문장(개인 연구실 선언)을 대형 serif 헤드라인으로.
   본문이 [본문, (AI 동료), 맺음] 다중 블록이 되며 첫 블록(div:first-child)으로 스코프(2026-07-03) */
.about__body>div:first-child .md-report>p:first-child{
  font-family:var(--serif);font-weight:600;
  font-size:clamp(1.35rem,3.4vw,1.7rem);line-height:1.45;
  color:var(--ink);
}
.about__body>div:first-child .md-report>p:first-child::after{
  content:"";display:block;width:1.75rem;height:2px;margin-top:1.1rem;
  background:var(--clay-soft);border-radius:2px;
}
/* 리드 다음(자기소개 스탠자) 앞에 큰 여백 — 구조 전환은 '의도된 여백' */
.about__body>div:first-child .md-report>p:first-child+p{margin-top:1.6rem;}

/* 자기소개 스탠자(4행 br) — clay-tint 배경 + 좌측 리본 인용 → '의도된 스탠자' */
.about__body>div:first-child .md-report>p:nth-child(2){
  color:var(--ink);line-height:1.7;
  background:var(--clay-tint);
  border-left:3px solid var(--clay);
  border-radius:0 var(--r-md) var(--r-md) 0;
  padding:1rem 1.25rem;
}
/* 스탠자 뒤 본문 복귀에도 전환 여백 */
.about__body>div:first-child .md-report>p:nth-child(2)+p{margin-top:1.6rem;}

/* 접근법 3단계 — 코랄 번호 카드(섹션 앵커) */
.about__body .md-report ol{
  list-style:none;counter-reset:step;padding:0;margin-top:1.5rem;
  display:grid;gap:.65rem;
}
.about__body .md-report ol+p{margin-top:1.5rem;}
.about__body .md-report ol>li{
  counter-increment:step;position:relative;margin:0;
  background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);
  box-shadow:var(--shadow-sm);
  padding:.9rem 1.1rem .9rem 3.5rem;
  color:var(--ink);line-height:1.55;
}
.about__body .md-report ol>li::before{
  content:counter(step);position:absolute;left:1rem;top:50%;transform:translateY(-50%);
  width:1.85rem;height:1.85rem;border-radius:50%;
  background:var(--clay);color:#fff;
  font-family:var(--serif);font-weight:700;font-size:1rem;
  display:flex;align-items:center;justify-content:center;
}

/* 마무리 핵심 문장(CC BY·오류제보) — hr 바로 앞 <p>를 풀쿼트로 승격.
   위치 대신 'hr 직전 형제' 특성으로 타깃 → 문단 추가 시 어긋남 완화 */
.about__body .md-report p:has(+hr){
  font-family:var(--serif);font-size:1.1rem;line-height:1.6;
  color:var(--ink);
  background:var(--clay-tint);
  border-radius:var(--r-md);
  padding:1.1rem 1.35rem;
  margin-top:1.75rem;
}

/* 하단 밴드 — 풀블리드 구분선 + 연락처 + 서명 */
.about__body .md-report hr{
  border:0;border-top:1px solid var(--line);
  margin:2rem calc(-1 * clamp(1.4rem,4vw,2.75rem)) 1.5rem;
}
.about__body .md-report ul{
  list-style:none;margin:0;padding:0;
  display:flex;flex-wrap:wrap;gap:.4rem 2rem;font-size:.98rem;
}
.about__body .md-report ul>li{margin:0;color:var(--muted);}
.about__body .md-report ul>li a{font-weight:600;color:var(--clay-deep);text-underline-offset:2px;}
.about__body .md-report ul>li a:hover{color:var(--clay);}

/* 서명 — 우하단 정렬 + 얇은 상단 rule로 '편지 맺음' */
.about__body .md-report .about-sign{
  margin-top:1.6rem;padding-top:1.2rem;
  border-top:1px solid var(--line-soft);
  text-align:right;line-height:1.4;
}
.about__body .md-report .about-sign__name{
  display:block;font-family:var(--serif);font-weight:600;
  font-size:1.3rem;color:var(--ink);
}
.about__body .md-report .about-sign__role{
  display:block;font-size:.9rem;color:var(--muted);margin-top:.3rem;
}

/* 폴백 — :has() 미지원 브라우저에서도 마무리 문장이 무너지지 않게.
   마무리 문장은 맺음 블록(div:last-child)에 있으므로 그쪽으로 스코프(2026-07-03) */
@supports not selector(p:has(+hr)){
  .about__body>div:last-child .md-report>p:nth-last-of-type(1){
    font-family:var(--serif);font-size:1.1rem;line-height:1.6;color:var(--ink);
    background:var(--clay-tint);border-radius:var(--r-md);
    padding:1.1rem 1.35rem;margin-top:1.75rem;
  }
}

/* 모바일 — 좁은 폭 리듬 방어 */
@media (max-width:560px){
  .about__body .md-report>p:nth-child(2){padding:.9rem 1rem;}
  .about__body .md-report p:has(+hr){padding:1rem 1.1rem;}
  .about__body .md-report hr{margin-inline:calc(-1 * clamp(1.4rem,4vw,2.75rem));}
  .about__body .md-report ul{gap:.35rem 1.4rem;}
  .about__body .md-report .about-sign{text-align:left;}
}

/* --- 보고서 --- */
.report__inner{max-width:var(--w-report);margin-inline:auto;padding-block:clamp(2rem,5vw,3.5rem);}
.report h1{margin-top:.3rem;}
.report-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:2rem;}

/* PREVIEW 알약 뱃지 */
.preview-badge{
  display:inline-block;font-family:var(--sans);font-weight:700;
  font-size:.72rem;letter-spacing:.08em;
  padding:.3em .8em;border-radius:999px;
  background:var(--brass-tint);color:var(--clay-deep);
  border:1px solid var(--brass-soft);
  text-transform:uppercase;
}
.preview-badge--sm{font-size:.62rem;padding:.22em .6em;margin-bottom:.5rem;}

/* 요약 콜아웃 (인용블록 톤) */
.report-summary{
  background:var(--surface-2);border:1px solid var(--line);
  border-left:4px solid var(--clay);border-radius:var(--r-md);
  padding:1.25rem 1.5rem;margin:0 0 1.4rem;
}
.report-summary__label{
  font-family:var(--sans);font-weight:700;font-size:.78rem;letter-spacing:.06em;
  text-transform:uppercase;color:var(--clay-deep);margin:0 0 .4rem;
}
.report-summary__body{margin:0;color:var(--ink-soft);}
/* 요약 + 매칭률·실행밀도 한 행(요약 좌 · 수치 우 1행 2열 강조, 2026-07-04) */
.report-summary-row{display:flex;flex-wrap:wrap;gap:.8rem;align-items:stretch;margin:0 0 2.25rem;}
.report-summary-row .report-summary{flex:1 1 24rem;margin:0;}
.report-summary-row__metrics{display:flex;gap:.7rem;align-items:stretch;flex:0 0 auto;}
/* 타일 강조형(보고서 한정 오버라이드 — L0 공용 .rc-metric 기본형은 불변): 세로 스택 카드 + 큰 숫자 */
.report-summary-row__metrics .rc-metric{
  flex-direction:column;align-items:flex-start;justify-content:center;gap:.2rem;
  padding:.85rem 1.2rem;min-width:9.5rem;
}
.report-summary-row__metrics .rc-metric b{font-size:2.1rem;}
.report-summary-row .rc-metrics__note{flex-basis:100%;margin:0;font-size:.78rem;color:var(--muted);}
@media(max-width:680px){
  .report-summary-row__metrics{flex:1 1 100%;}
  .report-summary-row__metrics .rc-metric{flex:1;min-width:0;}
}

/* 읽는 법 + 용어 1분 가이드 — 딥링크 첫 방문자용 최소 서사(2026-07-02) */
.report-guide{margin:0 0 2rem;font-size:.9rem;}
.report-guide__how{
  margin:0 0 .5rem;color:var(--ink-soft);line-height:1.6;
  background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r-sm);padding:.65rem .9rem;
}
.report-guide__how strong{color:var(--ink);}
.report-guide__terms{
  border:1px solid var(--line);border-radius:var(--r-sm);
  background:var(--surface);padding:.4rem .8rem;
}
.report-guide__terms summary{
  cursor:pointer;font-weight:600;color:var(--ink-soft);font-size:.85rem;padding:.2rem 0;
}
.report-guide__terms ul{margin:.5rem 0 .3rem;padding-left:1.1rem;color:var(--ink-soft);font-size:.85rem;line-height:1.6;}
.report-guide__terms li{margin:.3rem 0;}
.report-guide__terms li b{color:var(--ink);}
.report-guide__more{margin:.3rem 0 .3rem;font-size:.85rem;}

/* 현재 버전 + 변경 이력 (진단 깊이 사다리, Part Ⅴ §0-B) */
.report-version{
  margin:0 0 2rem;font-size:.9rem;
}
.report-version__current{
  margin:0 0 .4rem;color:var(--ink-soft);
}
.report-version__current strong{color:var(--ink);}
.report-version__history{
  border:1px solid var(--line);border-radius:var(--r-sm);
  background:var(--surface);padding:.4rem .8rem;
}
.report-version__history summary{
  cursor:pointer;font-weight:600;color:var(--ink-soft);
  font-size:.85rem;padding:.2rem 0;
}
.report-version__history ul{
  margin:.5rem 0 .2rem;padding-left:1.1rem;color:var(--muted);font-size:.85rem;
}
.report-version__history li{margin:.25rem 0;}
.report-version__history li strong{color:var(--ink-soft);}
/* 이전 대비 갱신 내용 — 자동 텍스트 diff (Part Ⅴ §0-B) */
.report-version__diff{
  border:1px solid var(--line);border-radius:var(--r-sm);
  background:var(--surface);padding:.4rem .8rem;margin-top:.5rem;
}
.report-version__diff summary{
  cursor:pointer;font-weight:600;color:var(--ink-soft);font-size:.85rem;padding:.2rem 0;
}
.report-diff{
  margin:.5rem 0 .2rem;padding:.6rem .7rem;overflow-x:auto;
  font-size:.8rem;line-height:1.5;white-space:pre-wrap;word-break:break-word;
  background:var(--paper-2);border-radius:var(--r-sm);
}
.report-diff__add{display:block;background:var(--c-part-bg);color:var(--c-part);}
.report-diff__del{display:block;background:var(--clay-tint);color:var(--clay-deep);}
.report-diff__meta{display:block;color:var(--muted);font-weight:600;}
.report-diff__ctx{display:block;color:var(--ink-soft);}

/* 지역 L0 진단 뷰 — 공개 카드(region_card)·보고서(ReportPage) 공용(_region_l0.html) */
.rc{max-width:var(--w-report);}
.rc-head{border-bottom:1px solid var(--line);padding-bottom:1rem;margin-bottom:1.4rem;}
.rc-head .meta{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;margin:.5rem 0;}
.rc-head .muted{font-size:.9rem;}
.rc-metaline{font-size:.9rem;margin:.2rem 0 1rem;}
/* 보고서 최하단 데이터 기준·인구 — 얇은 구분선 위 각주(2026-07-03) */
.rc-metaline--foot{margin:2rem 0 0;padding-top:1rem;border-top:1px solid var(--line-soft);}
/* 강점 얼굴(89개의 가르침) — 자랑할 것. 참여 녹색으로 공백(clay)과 시각 대비 (§11) */
.rc-teaching{background:var(--c-part-bg);border:1px solid var(--line);border-left:4px solid var(--c-part);border-radius:var(--r-md);padding:.9rem 1.1rem;margin:0 0 1.1rem;}
.rc-teaching__label{font-size:.8rem;font-weight:600;color:var(--c-part);margin:0 0 .25rem;}
.rc-belt{display:inline-block;font-size:.72rem;font-weight:700;background:var(--c-part);color:#fff;border-radius:999px;padding:.06em .6em;margin-left:.3rem;}
.rc-teaching__title{font-family:var(--serif);font-size:1.3rem;font-weight:700;color:var(--ink);margin:0;}
.rc-teaching__concept{font-size:.92rem;color:var(--ink-soft);margin:.4rem 0 0;line-height:1.55;}
.rc-teaching__pride{font-size:.92rem;color:var(--ink-soft);margin:.4rem 0 0;font-style:italic;}
.rc-teaching__cases{margin:.7rem 0 0;border-top:1px solid var(--line-soft);padding-top:.55rem;}
.rc-teaching__caseslabel{font-size:.8rem;font-weight:700;color:var(--c-part);margin:0 0 .35rem;}
.rc-teaching__cases ul{list-style:none;margin:0;padding:0;}
.rc-teaching__cases li{margin:.25rem 0;line-height:1.5;}
.rc-teaching__cases a{color:var(--ink);}
.rc-casetier{font-size:.7rem;font-weight:700;color:var(--c-part);background:var(--surface);border:1px solid var(--c-part);border-radius:999px;padding:.04em .5em;margin-left:.25rem;white-space:nowrap;}
.rc-prov{font-size:.68rem;color:var(--muted);background:var(--paper-2);border-radius:999px;padding:.04em .5em;margin-left:.2rem;white-space:nowrap;}
/* 보고서 강점카드 — '대표 혁신사례'만(teaching_cases_only): 제목+요약+상세링크(2026-07-03) */
.rc-teaching--cases-only .rc-teaching__cases{border-top:0;margin-top:0;padding-top:0;}
.rc-teaching__cases li.rc-case{margin:.75rem 0;line-height:1.5;}
.rc-teaching__cases li.rc-case:first-child{margin-top:.35rem;}
.rc-case__summary{font-size:.86rem;color:var(--ink-soft);line-height:1.55;margin:.3rem 0 .25rem;}
.rc-case__more{display:inline-block;font-size:.8rem;font-weight:600;color:var(--c-part);}
.rc-case__more:hover{text-decoration:underline;}
/* 핵심 공백 영역 헤드라인(상단) — 어디가·왜 (C20) */
.rc-gaparea{background:var(--clay-tint);border:1px solid var(--line);border-left:4px solid var(--clay);border-radius:var(--r-md);padding:.9rem 1.1rem;margin:0 0 1.4rem;}
/* 우선 검토 모델 카드 — 실증 등급 배지(E3 제안형 강조, 2026-07-04 리뷰 반영) */
.gm-tier{display:inline-block;font-size:.7rem;font-weight:700;padding:.14em .5em;border-radius:999px;
  background:var(--surface-2);color:var(--ink-soft);border:1px solid var(--line);}
.gm-tier--e3{background:var(--brass-tint);color:var(--clay-deep);border-color:var(--brass-soft);}
/* 매칭률·실행밀도 스탯 — 본문에 묻힌 두 지표를 상단 강조(2026-07-03, 우열 아님 §11) */
.rc-metrics{display:flex;flex-wrap:wrap;gap:.7rem;margin:0 0 1.4rem;}
.rc-metric{display:flex;align-items:baseline;gap:.6rem;background:var(--surface);
  border:1px solid var(--line);border-radius:var(--r-md);padding:.65rem 1rem;min-width:150px;}
.rc-metric b{font-family:var(--serif);font-size:1.45rem;line-height:1.1;color:var(--ink);}
.rc-metric span{font-size:.8rem;font-weight:700;color:var(--ink-soft);line-height:1.3;}
.rc-metric span em{display:block;font-style:normal;font-weight:400;color:var(--muted);font-size:.72rem;}
.rc-metrics__note{flex-basis:100%;margin:0;font-size:.78rem;color:var(--muted);}
.rc-gaparea__label{font-size:.8rem;font-weight:600;color:var(--clay-deep);margin:0 0 .25rem;}
.rc-gaparea__name{font-family:var(--serif);font-size:1.3rem;font-weight:700;color:var(--ink);margin:0;}
.rc-gaparea__sub{font-family:var(--sans);font-size:.85rem;font-weight:500;color:var(--muted);}
.rc-gaparea__gap{font-size:.85rem;color:var(--clay-deep);margin:.3rem 0 0;}
.rc-gaparea__why{font-size:.92rem;color:var(--ink-soft);margin:.5rem 0 0;line-height:1.55;}
.rc-sec{margin:1.6rem 0;}
.rc-sec h2{font-size:1.1rem;margin:0 0 .5rem;}
.rc-gaps{margin:.3rem 0 0;padding-left:1.1rem;}
.rc-gaps li{margin:.3rem 0;color:var(--ink-soft);}
/* 우선 검토할 혁신모델(=비어 있는 혁신모델) — '필수 기전(할 것) / 함정(하지 말 것)'을 한눈에 */
.rc-gm-intro{font-size:.86rem;color:var(--ink-soft);margin:.2rem 0 .75rem;line-height:1.55;}
.rc-gm-intro .gm-do-tag{color:var(--c-part);font-weight:700;white-space:nowrap;}
.rc-gm-intro .gm-dont-tag{color:var(--clay-deep);font-weight:700;white-space:nowrap;}
.rc-gapmodels{list-style:none;margin:.3rem 0 0;padding:0;display:grid;gap:.7rem;}
.rc-gapmodels .gm-card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);padding:.8rem .9rem;box-shadow:var(--shadow-sm);}
.rc-gapmodels .gm-card.is-primary{border-color:var(--clay-soft);box-shadow:var(--shadow-md);}
.rc-gapmodels .gm-head{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;}
.rc-gapmodels .gm-code{font-weight:700;color:var(--clay-deep);}
.rc-gapmodels .gm-name{font-weight:600;color:var(--ink);}
.rc-gapmodels .gm-area{font-size:.74rem;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:.05rem .55rem;}
.rc-gapmodels .gm-compound{font-size:.72rem;color:var(--muted);}
.rc-gapmodels .gm-primary{font-size:.73rem;font-weight:700;color:var(--clay-deep);background:var(--clay-tint);border-radius:999px;padding:.05rem .55rem;}
.rc-gapmodels .gm-oneliner{font-size:.86rem;color:var(--ink-soft);margin:.4rem 0 0;line-height:1.5;}
/* ✓ 할 것 — 필수 기전 3 (강조: 더 이상 묻히지 않게) */
.rc-gapmodels .gm-do{margin:.6rem 0 0;border-left:3px solid var(--c-part);background:var(--c-part-bg);border-radius:0 var(--r-sm) var(--r-sm) 0;padding:.5rem .7rem;}
.rc-gapmodels .gm-do-label{font-size:.8rem;font-weight:700;color:var(--c-part);margin:0 0 .35rem;}
.rc-gapmodels .gm-do-label .muted{font-weight:500;}
.rc-gapmodels .gm-mechs{list-style:none;margin:0;padding:0;display:grid;gap:.28rem;}
.rc-gapmodels .gm-mechs li{position:relative;padding-left:1.15rem;font-size:.9rem;color:var(--ink);line-height:1.45;}
.rc-gapmodels .gm-mechs li::before{content:"✓";position:absolute;left:0;top:0;color:var(--c-part);font-weight:700;}
/* ✕ 하지 말 것 — 필수 기전 바로 다음 줄에 */
.rc-gapmodels .gm-dont{margin:.45rem 0 0;font-size:.88rem;color:var(--ink-soft);line-height:1.5;background:var(--clay-tint);border-left:3px solid var(--clay);border-radius:0 var(--r-sm) var(--r-sm) 0;padding:.45rem .7rem;}
.rc-gapmodels .gm-dont-label{font-weight:700;color:var(--clay-deep);margin-right:.3rem;white-space:nowrap;}
.rc-axes{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.5rem;margin:.4rem 0;}
.rc-ax{display:flex;align-items:center;gap:.55rem;border:1px solid var(--line);border-radius:var(--r-md);padding:.5rem .7rem;background:var(--surface);}
/* 상태 심볼 = 색 칩(갖춤=녹색·형성중=황동·개선기회=코랄), /gapmap/ 6기능군 표와 동일 팔레트·이중 구분(모양+색) */
.rc-ax .sym{font-size:1.05rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;width:1.75em;height:1.75em;border-radius:var(--r-sm);flex:none;}
.rc-ax.s-have .sym{color:var(--c-part);background:var(--c-part-bg);}
.rc-ax.s-forming .sym{color:var(--brass);background:var(--brass-tint);}
.rc-ax.s-open .sym{color:var(--clay-deep);background:var(--clay-tint);}
.rc-ax.s-na .sym{color:var(--faint);background:var(--surface-2);}
/* 상태 이름(갖춤/형성 중/비어 있는 기회)도 같은 색으로 강조 — 한눈 구분 */
.rc-ax.s-have .ax-sname{color:var(--c-part);font-weight:600;}
.rc-ax.s-forming .ax-sname{color:var(--brass);font-weight:600;}
.rc-ax.s-open .ax-sname{color:var(--clay-deep);font-weight:600;}
.rc-ax.is-gaparea{border-color:var(--clay);box-shadow:0 0 0 1px var(--clay);background:var(--clay-tint);}
.rc-ax .ax-name{font-weight:600;font-size:.9rem;}
.rc-ax .ax-state{font-size:.78rem;color:var(--muted);}
.rc-ax .ax-need{font-weight:600;}
.rc-ax .ax-need--high{color:var(--clay-deep);}
.rc-axhelp{font-size:.82rem;}
.rc-cta{display:flex;flex-wrap:wrap;gap:.6rem;margin:.6rem 0;}
.rc-disclaimer{margin-top:1.8rem;border-top:1px solid var(--line);padding-top:1rem;font-size:.85rem;color:var(--muted);}
.rc-source{font-size:.85rem;color:var(--muted);margin-top:.4rem;}
.rc-axgroup{margin:1rem 0;}
.rc-axgroup h3{font-size:.98rem;margin:0 0 .4rem;}
.rc-axgroup ul{list-style:none;margin:0;padding:0;}
.rc-axgroup li{padding:.45rem 0;border-bottom:1px solid var(--line-soft);display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;}
.rc-axgroup li a{font-weight:600;}
.rc-axgroup .reason{flex-basis:100%;font-size:.8rem;color:var(--muted);}
.tier-badge{font-size:.7rem;padding:.12em .5em;border-radius:999px;border:1px solid var(--line);color:var(--muted);}
.tier-badge.est{color:var(--clay-deep);border-color:var(--clay-soft);}
.badge-mention{font-size:.7rem;font-weight:700;padding:.12em .5em;border-radius:999px;background:var(--brass-tint);color:var(--clay-deep);}
.rc-modlist{list-style:none;margin:.5rem 0;padding:0;}
.rc-modlist li{padding:.4rem 0;border-bottom:1px solid var(--line-soft);display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;}
.rc-modbadge{display:inline-flex;width:1.5rem;height:1.5rem;align-items:center;justify-content:center;border-radius:var(--r-sm);background:var(--paper-2);color:var(--ink-soft);font-weight:800;}

/* 본문 블록 */
.report-body{font-size:1.05rem;}
.report-body .body-heading{margin-top:2rem;}
.report-body .body-figure{margin:1.5rem 0;}
.report-body .body-figure img{max-width:100%;height:auto;border-radius:var(--r-md);}
.report-body .body-figure figcaption{font-size:.85rem;margin-top:.5rem;}
.report-body .body-quote{
  border-left:3px solid var(--brass-soft);padding-left:1rem;margin:1.5rem 0;
  font-family:var(--serif);font-size:1.15rem;color:var(--ink-soft);
}
.report-body .body-quote cite{display:block;font-size:.85rem;font-style:normal;margin-top:.4rem;}
.report-body .body-doc{margin:1.25rem 0;}

/* 콜아웃 블록 */
.callout{border-radius:var(--r-md);padding:1rem 1.25rem;margin:1.5rem 0;border:1px solid var(--line);}
.callout--info{background:var(--c-open-bg);border-color:var(--c-open);}
.callout--note{background:var(--surface-2);}
.callout--key{background:var(--brass-tint);border-color:var(--brass-soft);}
.callout__title{font-weight:700;margin:0 0 .35rem;}
.callout__body{margin:0;}
.callout__body p:last-child{margin-bottom:0;}

.report-pdf{margin:2rem 0;}
/* CTA 간격 공통화(인라인 style 제거) */
.report-cta{margin-top:2rem;}
/* 관련 사례 목록(에디토리얼) — raw <ul> 정리 */
.related-cases{margin-top:2rem;border-top:1px solid var(--line);padding-top:1.3rem;}
.related-cases h2{font-size:1.02rem;margin:0 0 .6rem;}
.related-cases ul{list-style:none;margin:0;padding:0;}
.related-cases li{padding:.5rem 0;border-bottom:1px solid var(--line-soft);}
.related-cases li a{font-weight:600;}
.report-notice{
  margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--line);
  font-size:.85rem;color:var(--muted);
}
/* AI 협업 표기 한 줄 — 정본(/about/#ai)으로 링크(2026-07-02) */
.report-ai-note{
  margin-top:1rem;font-size:.85rem;color:var(--muted);
}
/* 보고서 부록(최하단) — 읽는 법·용어 가이드 + 버전·변경 이력(2026-07-03 하단 이동) */
.report-appendix{
  margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--line);
}
.report-appendix .report-guide{margin-bottom:1rem;}
.report-appendix .report-version{margin-bottom:0;}
/* 소개 — AI 동료 소개 섹션(#ai). 편지 카드(about__body) 안, 맺음 블록 앞 배치 */
.about__ai{
  margin:2.25rem 0;padding-top:1.9rem;
  border-top:1px solid var(--line);
}
.about__ai h2{
  font-family:var(--serif);font-weight:600;font-size:1.45rem;
  color:var(--ink);margin:0 0 .35rem;
}
.about__ai h2::after{
  content:"";display:block;width:1.75rem;height:2px;margin-top:.8rem;
  background:var(--clay-soft);border-radius:2px;
}
.about__ai h3{
  font-size:1.02rem;font-weight:700;color:var(--ink);
  margin:1.7rem 0 .45rem;padding-left:.7rem;
  border-left:3px solid var(--clay-soft);
}
.about__ai p{margin:.4rem 0;font-size:.98rem;line-height:1.7;color:var(--ink-soft);word-break:keep-all;}
.about__ai p b{color:var(--ink);}
.about__ai a{color:var(--clay-deep);font-weight:600;text-underline-offset:2px;}
.about__ai a:hover{color:var(--clay);}

/* 보고서 목록 카드 */
.report-filters{display:flex;align-items:center;gap:.6rem;margin:1.25rem 0 1.75rem;}
.report-cards{margin-top:1rem;}
.report-card{display:block;transition:transform .12s ease,box-shadow .2s ease;}
.report-card:hover{text-decoration:none;transform:translateY(-2px);box-shadow:var(--shadow-md);}
.report-card h3{margin:.25rem 0 .6rem;}
.report-card__meta{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.6rem;}

@media (max-width:720px){
  .site-header__row{flex-wrap:wrap;}
  .nav{order:3;width:100%;}
}

/* --- 롱폼 문서(방법론 등) --- */
.doc-inner{max-width:var(--w-content);padding-block:clamp(2rem,5vw,3.5rem);}
.doc-summary{
  font-size:1.15rem;line-height:1.7;color:var(--ink-soft);
  border-left:4px solid var(--clay);background:var(--surface-2);
  padding:1rem 1.25rem;border-radius:var(--r-md);margin:1.25rem 0 2.25rem;
}
/* 섹션 리듬: 소제목 위 여백 */
.report-body .body-heading{margin-top:2.6rem;}
.report-body > *:first-child{margin-top:0;}
.report-body ol,.report-body ul{padding-left:1.25rem;}
.report-body ol li,.report-body ul li{margin:.45rem 0;}

/* --- 본문 표 --- */
.report-body table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.95rem;}
.report-body th,.report-body td{
  border:1px solid var(--line);padding:.6em .8em;text-align:left;vertical-align:top;
}
.report-body thead th,.report-body table tr:first-child th{
  background:var(--surface-2);font-weight:700;color:var(--ink);
}

/* --- 스탯 카드(수치 시각화) --- */
.stat-cards{
  display:grid;grid-template-columns:repeat(var(--cols,4),1fr);
  gap:1rem;margin:1.75rem 0;
}
.stat-card{
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);
  padding:1.1rem 1.15rem;box-shadow:var(--shadow-sm);
  display:flex;flex-direction:column;gap:.35rem;
}
.stat-card__value{font-family:var(--serif);font-size:1.9rem;line-height:1.1;color:var(--clay-deep);}
.stat-card__label{font-weight:700;font-size:.95rem;color:var(--ink);}
.stat-card__desc{font-size:.85rem;color:var(--muted);line-height:1.5;}
@media (max-width:680px){
  .stat-cards{grid-template-columns:repeat(2,1fr)!important;}
}

/* 상시 '내 지역 진단' 진입 CTA (전역 내비) */
.nav-utility a.nav-diagnose{
  background:var(--clay);color:#fff;padding:.4em .8em;border-radius:999px;
  font-size:.85rem;box-shadow:var(--shadow-sm);
}
.nav-utility a.nav-diagnose:hover{background:var(--clay-deep);color:#fff;}

/* 동선(브레드크럼) — 진단·사례 흐름 페이지 공통 */
.crumbs{font-size:.85rem;color:var(--muted);margin:0 0 .6rem;}
.crumbs a{color:var(--muted);}
.crumbs a:hover{color:var(--ink);}
.crumbs .sep{margin:0 .35em;color:var(--faint);}
.crumbs .cur{color:var(--ink-soft);}
/* 전역 빵부스러기(base.html {% block breadcrumb %}) — main 상단, 홈 제외 전 페이지 */
.sitecrumbs{border-bottom:1px solid var(--line-soft);}
.sitecrumbs .crumbs{max-width:var(--w-content);margin-block:0;margin-inline:auto;padding-top:.8rem;padding-bottom:.65rem;}
/* breadcrumb 바로 아래 콘텐츠 — 위치표시↔타이틀 간격 축소(콘텐츠 상단 여백이 breadcrumb와 겹쳐 과하던 것 정리) */
.sitecrumbs + section,
.sitecrumbs + article > .container{padding-top:clamp(1.1rem,2.5vw,1.7rem);}
/* 도구↔데이터셋 상호 안내(중복 혼선 정리) */
.xref-note{font-size:.85rem;color:var(--ink-soft);background:var(--surface-2);
  border-radius:var(--r-sm);padding:.5rem .8rem;margin:.2rem 0 1rem;}



/* 축 봉합 범례(axis_legend) — 입력 5축 → S점수 → 출력 6기능군 */
.axleg{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-2);
  padding:1.1rem 1.2rem;margin:1.4rem 0;}
.axleg-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;}
.axleg-head h2{font-size:1.05rem;margin:0;}
.axleg-head a{color:var(--violet);font-weight:600;font-size:.85rem;}
.axleg-line{color:var(--ink-soft);font-size:.9rem;line-height:1.55;margin:.4rem 0 1rem;}
.axleg-line strong{color:var(--ink);}
.axleg-flow{list-style:none;display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:.7rem;padding:0;margin:0;}
@media (max-width:760px){.axleg-flow{grid-template-columns:1fr;}}
.axleg-stage{position:relative;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r-md);padding:.75rem .85rem;}
.axleg-stage--in{border-left:4px solid var(--brass);}
.axleg-stage--match{border-left:4px solid var(--violet);}
.axleg-stage--out{border-left:4px solid var(--clay);}
.axleg-role{display:inline-block;font-size:.68rem;font-weight:800;letter-spacing:.04em;
  color:var(--muted);text-transform:uppercase;}
.axleg-stage b{display:block;font-size:.92rem;color:var(--ink);margin:.1rem 0 .45rem;}
.axleg-items{display:flex;flex-wrap:wrap;gap:.3rem;}
.axleg-items>span{font-size:.76rem;border-radius:999px;padding:.18rem .5rem;
  background:var(--paper-2);color:var(--ink-soft);}
.axleg-items .func6{cursor:help;background:var(--surface-2);border:1px solid var(--line);}
.axleg-items .func6 i{font-style:normal;font-weight:800;color:var(--clay-deep);}
.axleg-stage small{display:block;color:var(--muted);font-size:.76rem;margin-top:.45rem;line-height:1.4;}
/* 진단 5축 칩(.diag5)은 data-axis 팝오버 없음 — 6기능군과 시각 분리 */
.axleg-items .diag5{background:var(--brass-tint);color:var(--ink-soft);}

/* 진단 보고서 인덱스 — 작동 필터 */
.report-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin:1rem 0;}
.rf-field{display:inline-flex;align-items:center;gap:.4rem;}
.rf-lab{font-size:.82rem;color:var(--muted);font-weight:700;}
.rf-field select{padding:.4rem .6rem;border:1px solid var(--line);border-radius:var(--r-sm);
  background:var(--surface);color:var(--ink);font-size:.85rem;}
.rf-depths{display:inline-flex;gap:.3rem;}
.rf-depth{border:1px solid var(--line);background:var(--surface);color:var(--muted);
  border-radius:999px;padding:.3rem .8rem;font-size:.82rem;cursor:pointer;}
.rf-depth.on{background:var(--violet);color:#fff;border-color:var(--violet);font-weight:700;}
.rf-count{font-size:.8rem;margin-left:auto;}

/* 사례 카드 역링크 — 이 사례를 근거로 쓰는 혁신모델(인덱스는 코드 칩, 상세는 링크) */
.cdb-models{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;margin:.4rem 0 0;}
.cdb-models .lab{font-size:.72rem;color:var(--muted);font-weight:700;}
.cdb-mchip{font-size:.72rem;padding:.08em .45em;border-radius:var(--r-sm);
  background:var(--c-open-bg);color:var(--c-open);font-weight:700;}
/* 문제유형 칩(사례 카드·상세) — '왜' 쪽이라 clay 톤 */
.cdb-prob{display:flex;flex-wrap:wrap;gap:.3rem;margin:.1rem 0 .45rem;}
.prob-chip{font-size:.72rem;padding:.12em .55em;border-radius:999px;
  background:var(--clay-tint);color:var(--clay-deep);font-weight:600;}


/* 보고서 전체 본문 인라인 (MarkdownBlock → core.markdownify) */
.md-report{font-size:.99rem;line-height:1.75;color:var(--ink-soft);}
.md-report>:first-child{margin-top:0;}
.md-report h2{font-family:var(--serif);font-size:1.5rem;color:var(--ink);
  margin:2.6rem 0 .8rem;padding-top:1.3rem;border-top:1px solid var(--line);}
.md-report h3{font-family:var(--serif);font-size:1.2rem;color:var(--ink);margin:1.9rem 0 .6rem;}
.md-report h4{font-size:1.03rem;color:var(--ink);margin:1.4rem 0 .5rem;}
.md-report p{margin:.7rem 0;}
.md-report ul,.md-report ol{margin:.7rem 0 .7rem 1.3rem;}
.md-report li{margin:.32rem 0;}
.md-report strong{color:var(--ink);}
.md-report blockquote{margin:1rem 0;padding:.85rem 1.1rem;background:var(--surface-2);
  border-left:3px solid var(--clay-soft);border-radius:0 var(--r-sm) var(--r-sm) 0;}
.md-report blockquote p{margin:.4rem 0;}
.md-report blockquote>:first-child{margin-top:0;}
.md-report blockquote>:last-child{margin-bottom:0;}
.md-report hr{border:0;border-top:1px solid var(--line);margin:2.2rem 0;}
.md-report .md-table-wrap{margin:1.4rem 0;border:1px solid var(--line);
  border-radius:var(--r-sm);overflow-x:auto;}
.md-report table{border-collapse:collapse;width:100%;font-size:.8rem;line-height:1.55;table-layout:auto;}
/* 넓은 표(비교진단표 9열)만 본문 칼럼 밖으로 대칭 확장(브레이크아웃)해
   가로 스크롤 없이 한눈에 본다. 데스크톱은 스크롤 없음, 모바일만 fallback 스크롤. */
.md-report .md-table-wide{width:min(var(--w-report-table),94vw);
  margin-inline:calc((100% - min(var(--w-report-table),94vw)) / 2);}
.md-report .md-table-wide table{font-size:.78rem;}
.md-report th,.md-report td{border:1px solid var(--line);padding:.5rem .6rem;
  text-align:left;vertical-align:top;}
.md-report thead th{background:var(--surface-2);color:var(--ink);font-weight:600;white-space:nowrap;}
.md-report tbody tr:nth-child(even){background:var(--surface);}
.md-report code{background:var(--surface-2);padding:.1rem .35rem;border-radius:4px;font-size:.85em;}
/* 전체 본문이 있을 때 보조 L0 뷰(6기능군·관련 사례) 구분선 */
/* 상단 보조뷰 — 요약과의 구분선 제거·간격 통일(2026-07-03 박사). 요약/강점/핵심공백 3블록 세로 간격 = 1.4rem */
.report-l0--sup{margin-top:1.4rem;}
.report-l0 .rc-teaching{margin-bottom:1.4rem;}
