/* =========================================================================
   LP 출자사업 트래커 — styles.css
   디자인 시스템 단일 구현. 마스터 기준 문서 §2(토큰)·§3(패턴)·§4(셸) 반영.
   기준 룩: '첫 써머리 버전'의 밀도·카드 크기·그라데이션 바·골드 포인트 정렬.
   ※ 색·간격·타이포는 여기 정의된 변수만 사용한다. 페이지에서 임의 hex/px 금지.
   ========================================================================= */

@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap");

/* ---- §2 토큰 ----------------------------------------------------------- */
:root{
  --chrome:#0F1E3D;     /* 헤더 바 · KPI 강조 카드 · 바 그라데이션 시작 */
  --navy:#14305C;       /* 섹션번호 배지 */
  --navy-soft:#27508C;  /* 바 그라데이션 끝 (또렷하게) */

  --bg:#FFFFFF;
  --bg-2:#F1EFE8;       /* 세컨더리 BG / 바 트랙 */
  --ink:#1A2742;        /* 본문 — 네이비 톤(블랙 아님) */
  --ink-sub:#5C6173;    /* 서브 */
  --ink-mute:#9A9892;   /* 캡션 / 약함 */
  --line:#E5E2DA;
  --line-ink:#1A2742;

  --red:#CC0000;        /* KOLON Red — surgical only */
  --red-tint:#FCEBEB;
  --warm:#C8A24A;       /* 골드 포인트 — 헤더 날짜·강조 KPI 수치·리드 바 */

  /* 스탯카드 의미색 (차분한 톤) */
  --c-form:#A8843E;     /* 결성 — 브론즈 */
  --c-run:#3D6A8A;      /* 운용 — 스틸블루 */
  --c-liq:#5E7C64;      /* 청산 — 세이지 */

  --st-open-bg:#FBE7C1;   --st-open-fg:#7A4708;   /* 접수중 — 앰버 */
  --st-closed-bg:#FBDAC9; --st-closed-fg:#9A3B1A; /* 접수마감 — 코랄(마감) */
  --st-rev-bg:#DCEAFB;    --st-rev-fg:#0C447C;    /* 심사중 — 블루 */
  --st-done-bg:#E7E5DD;   --st-done-fg:#444441;   /* 발표완료 — 그레이 */
  --st-sel-bg:#DCEEC9;    --st-sel-fg:#27500A;    /* 선정/결성 — 그린 */
  --st-no-bg:#FBDAD8;     --st-no-fg:#791F1F;     /* 미선정/취소 — 레드 */

  --radius:12px;
  --lift:0 1px 3px rgba(15,30,61,.06);

  --font:"Pretendard",-apple-system,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;
  --font-en:"Inter",var(--font);
  --fs-kpi:2.375rem;    /* 38 (이전 밀도) */
  --fs-h1:1.875rem;     /* 30 페이지 제목 */
  --fs-h:1.25rem;       /* 20 섹션 제목 */
  --fs-th:.8125rem;     /* 13 표 헤더 */
  --fs-body:.9375rem;   /* 15 */
  --fs-cap:.75rem;      /* 12 */
  --fs-label:.6875rem;  /* 11 */

  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:20px; --s6:24px; --s8:32px; --s10:40px; --s12:48px; --s16:64px;
}

/* ---- 베이스 ------------------------------------------------------------ */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%; font-size:clamp(16px, 14.5px + 0.2vw, 17.5px); scroll-padding-top:72px; scroll-behavior:smooth;}
body{margin:0; background:var(--bg); color:var(--ink); font-family:var(--font); font-size:var(--fs-body); line-height:1.65; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;}
a{color:inherit; text-decoration:none;}
h1,h2,h3,p{margin:0;}
.wrap{max-width:1200px; margin:0 auto; padding:0 var(--s8);}
.num{font-variant-numeric:tabular-nums; text-align:right; white-space:nowrap;}
.ellipsis{overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}

/* ---- §4 헤더 (로고 키움) ----------------------------------------------- */
.site-header{background:var(--chrome); color:#fff;}
.site-header__in{display:flex; align-items:center; justify-content:space-between; height:66px;}
.brand{display:flex; align-items:center; gap:var(--s3); text-decoration:none; color:inherit; cursor:pointer; transition:opacity .15s;}
.brand:hover{opacity:.85;}
.brand__mark{width:40px; height:40px; border-radius:8px; background:var(--red); display:grid; place-items:center; flex:none;}
.brand__mark svg{width:24px; height:24px; stroke:#fff;}
.brand__text{display:flex; flex-direction:column; align-items:stretch;}
/* 'KOLON INVESTMENT' 글자별 span을 아래 제목 폭에 균일 간격으로 분배(양끝 맞춤) */
.brand__name{font-family:var(--font-en); font-size:var(--fs-label); font-weight:600; color:rgba(255,255,255,.72); line-height:1.35; display:flex; justify-content:space-between;}
.brand__name > span{display:inline-block;}
.brand__title{font-size:1.1875rem; font-weight:600; letter-spacing:.02em; line-height:1.3; color:#fff;}
.site-header__meta{display:flex; align-items:center; gap:var(--s2); font-size:var(--fs-cap); color:var(--warm);}
.site-header__dot{width:7px; height:7px; border-radius:50%; background:#5FBF7A;}
/* 헤더 우측 설정 메뉴 (체크리스트 패턴) */
.site-settings{position:relative; margin-left:auto;}
.site-settings__btn{
  width:36px; height:36px; border-radius:50%; border:none; cursor:pointer;
  background:rgba(255,255,255,.08); color:#fff;
  display:flex; align-items:center; justify-content:center;
  transition:background .15s;
}
.site-settings__btn:hover{background:rgba(255,255,255,.18);}
.site-settings__menu{
  position:absolute; top:44px; right:0;
  min-width:200px; background:#fff;
  border:1px solid var(--line); border-radius:10px;
  box-shadow:0 6px 24px rgba(15,30,61,.18);
  padding:6px 0;
  z-index:200;
}
.site-settings__item{
  display:block; width:100%; text-align:left;
  padding:10px 16px; border:none; background:transparent;
  font-size:.875rem; color:var(--ink); cursor:pointer;
  white-space:nowrap;
}
.site-settings__item:hover{background:var(--bg-2); color:var(--red);}
.site-settings__item[hidden]{display:none;}

/* ---- §4 탭 ------------------------------------------------------------- */
.tabnav{
  background:var(--bg);
  border-bottom:1px solid var(--line);
  position:sticky; top:0; z-index:50;
  box-shadow:0 1px 0 var(--line), 0 2px 6px rgba(15,30,61,.04);
}
.tabnav__in{display:flex; gap:0;}
.tab{
  padding:var(--s4) var(--s5);
  font-size:1.0625rem;        /* PC: 17px — 메뉴 명확하게 */
  font-weight:500;
  color:var(--ink-sub);
  border-bottom:3px solid transparent;
  margin-bottom:-1px;
  transition:color .15s ease, background .15s ease, border-color .15s ease;
  white-space:nowrap;
}
.tab:hover{color:var(--ink); background:var(--bg-2);}
.tab.is-active{
  color:var(--red);
  font-weight:600;
  border-bottom-color:var(--red);
}

/* ---- 🔥 트렌드 펀드 빠른 검색 (business.html) ------------------------------- */
.trend-filter{
  display:flex; align-items:center; gap:var(--s3);
  margin:var(--s4) 0 var(--s2);
  padding:var(--s3) var(--s4);
  background:linear-gradient(135deg, #FFF7E6 0%, #FFEEDB 100%);
  border-radius:var(--radius);
  border:1px solid #F5C97A;
}
.trend-filter__label{
  flex:none; padding-top:5px;
  font-size:var(--fs-cap); font-weight:700; letter-spacing:.03em;
  color:#9A6500; white-space:nowrap;
}
.trend-filter__chips{
  flex:1; display:flex; flex-wrap:wrap; gap:6px;
}
.trend-chip{
  display:inline-flex; align-items:center;
  padding:5px 12px;
  background:#FFFFFF;
  border:1px solid #E8B86A;
  border-radius:999px;
  font-size:.8125rem; color:#7A4708; font-weight:500;
  cursor:pointer; user-select:none;
  transition:all .12s;
}
.trend-chip:hover{ background:#FDF3DE; border-color:#C8A24A; }
.trend-chip.is-on{
  background:var(--red); color:#fff; border-color:var(--red); font-weight:700;
  box-shadow:0 2px 6px rgba(204,0,0,.18);
}

/* ---- 분야 다중선택 필터 (business.html) ----------------------------------- */
.sector-filter{
  display:flex; align-items:flex-start; gap:var(--s3);
  margin:var(--s4) 0 var(--s2);
  padding:var(--s3) var(--s4);
  background:var(--bg-2);
  border-radius:var(--radius);
  border:1px solid var(--line);
}
.sector-filter__label{
  flex:none; padding-top:5px;
  font-size:var(--fs-cap); font-weight:600; letter-spacing:.04em;
  color:var(--ink-sub); white-space:nowrap;
}
.sector-filter__chips{
  flex:1; display:flex; flex-wrap:wrap; gap:6px;
}
.sec-chip{
  display:inline-flex; align-items:center; gap:5px;
  padding:5px 11px;
  background:var(--bg);
  border:1px solid var(--line);
  border-radius:999px;
  font-size:.8125rem; color:var(--ink-sub);
  cursor:pointer; user-select:none;
  transition:color .12s, background .12s, border-color .12s;
}
.sec-chip:hover{ color:var(--ink); border-color:var(--ink-sub); }
.sec-chip small{ font-size:.6875rem; color:var(--ink-mute); font-variant-numeric:tabular-nums; }
.sec-chip.is-on{
  background:var(--red); color:#fff; border-color:var(--red); font-weight:600;
}
.sec-chip.is-on small{ color:rgba(255,255,255,.85); }
.sector-filter__clear{
  flex:none; align-self:flex-start;
  background:transparent; border:1px solid var(--line);
  color:var(--ink-sub); font-size:.8125rem;
  padding:5px 12px; border-radius:6px; cursor:pointer;
  white-space:nowrap;
}
.sector-filter__clear:hover{ border-color:var(--red); color:var(--red); }

/* ---- 머리말 + 제목 + 리드 ---------------------------------------------- */
.briefing{padding-top:var(--s8); padding-bottom:var(--s6); border-bottom:1px solid var(--line);}
.briefing__meta{font-family:var(--font-en); font-size:var(--fs-label); font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:var(--ink-mute);}
.page-title{font-size:var(--fs-h1); font-weight:600; letter-spacing:-.02em; margin-top:var(--s3);}
.page-sub{color:var(--ink-sub); margin-top:var(--s2);}
.lead{border-left:3px solid var(--warm); padding:var(--s1) 0 var(--s1) var(--s4); margin-top:var(--s5); font-size:1rem; line-height:1.7;}
.lead b{font-weight:600;}

/* ---- §4 섹션 (간격 축소) ----------------------------------------------- */
.section{margin-top:var(--s10);}
.section__head{display:flex; align-items:center; gap:var(--s3); padding-bottom:var(--s3); border-bottom:1px solid var(--line-ink);}
.section__no{width:28px; height:28px; border-radius:6px; background:var(--navy); color:#fff; font-family:var(--font-en); font-size:.8125rem; font-weight:600; display:grid; place-items:center; flex:none;}
.section__title{font-size:var(--fs-h); font-weight:600; letter-spacing:-.01em;}
.section__desc{color:var(--ink-sub); margin-top:var(--s3);}
.section__body{margin-top:var(--s5);}
.cols-2{display:grid; grid-template-columns:1fr 1fr; gap:var(--s8);}
.colhead{font-size:.875rem; font-weight:600; color:var(--ink); margin-bottom:var(--s4); display:flex; align-items:baseline; gap:6px;}
.colhead small{font-size:var(--fs-cap); color:var(--ink-mute); font-weight:500; letter-spacing:.04em;}
.muted{color:var(--ink-mute); font-size:var(--fs-cap); padding:var(--s2) 0;}

/* ---- §3-1 원장 테이블 (헤더 키움·Pretendard) --------------------------- */
.ledger{width:100%; border-collapse:collapse;}
.ledger thead th{font-size:var(--fs-th); font-weight:600; color:var(--ink-sub); text-align:left; padding:0 var(--s4) var(--s3); border-bottom:1px solid var(--line-ink);}
.ledger thead th.num{text-align:right;}
.ledger tbody td{padding:var(--s2) var(--s4); border-bottom:1px solid var(--line); vertical-align:middle;}
.ledger tbody tr:hover{background:rgba(241,239,232,.5);}
.ledger .t-main{font-weight:500;}
.ledger td.trunc{max-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.ledger td.col-lp{max-width:8.5rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.ledger td.col-name{max-width:0;}
.ledger td.col-name .t-main{overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.ledger .chev{color:var(--ink-mute); text-align:right; width:1.5rem;}
.ledger tr.is-own td{background:var(--red-tint);}
.ledger tr.is-own .t-main{color:var(--red); font-weight:600;}
.ledger th.st,.ledger td.st{text-align:center;}

/* ---- §3-2 랭킹 바 (두껍게·또렷한 그라데이션) --------------------------- */
.rank{display:flex; flex-direction:column;}
.rank__row{display:grid; grid-template-columns:1.4rem 9rem 1fr 12.5rem; align-items:center; gap:var(--s4); padding:var(--s2) 0; border-bottom:1px solid var(--line);}
.rank__no{color:var(--ink-mute); font-variant-numeric:tabular-nums; font-size:var(--fs-cap);}
.rank__label{font-size:var(--fs-body);}
.rank__track{display:block; height:14px; background:var(--bg-2); border-radius:999px; overflow:hidden;}
.rank__fill{display:block; height:100%; background:linear-gradient(90deg,var(--chrome),var(--navy-soft)); border-radius:999px;}
.rank__val{display:flex; justify-content:flex-end; align-items:baseline; gap:.45rem; font-variant-numeric:tabular-nums; font-weight:500; white-space:nowrap;}
.rank__amt{flex:1 1 auto; text-align:right;}
.rank__sub{flex:0 0 auto; text-align:right; color:var(--ink-sub); font-weight:400;}
.rank__row.is-own .rank__label{color:var(--red); font-weight:600;}
.rank__row.is-own .rank__fill{background:linear-gradient(90deg,#9E0000,var(--red));}
.rank--alt .rank__fill{background:linear-gradient(90deg,#2E7D6B,#4FB39A);}
/* 분야별 트랙레코드 우측: 수익률 | 금액 | 개사 — 각 고정폭 우측정렬(열 맞춤) */
#fund-sectortrack .rank__val{gap:.7rem;}
#fund-sectortrack .rv{text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap;}
#fund-sectortrack .rv-mx{flex:0 0 2.9rem; font-weight:700;}
#fund-sectortrack .rv-amt{flex:0 0 4.6rem; font-weight:600;}
#fund-sectortrack .rv-cnt{flex:0 0 3.4rem; color:var(--ink-sub); font-weight:400; font-size:var(--fs-cap);}
/* 요약 시장동향 2개 막대: 막대영역 넓히고(라벨·값폭 축소·막대 굵게) 금액·건수 끝라인 맞춤 */
#rank-sectors .rank__row, #rank-lps .rank__row{grid-template-columns:1.4rem 9rem 1fr 8.6rem;}
#rank-sectors .rank__track, #rank-lps .rank__track{height:17px;}
#rank-sectors .rank__amt, #rank-lps .rank__amt{flex:0 0 5.4rem;}
#rank-sectors .rank__sub, #rank-lps .rank__sub{flex:0 0 2.6rem;}

/* ---- §3-3 KPI 그리드 (작고·진한·골드 강조) ----------------------------- */
.kpi-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:var(--s4);}
.kpi{padding:var(--s5); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--lift);}
.kpi__k{font-family:var(--font-en); font-size:var(--fs-label); font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-sub);}
.kpi__v{font-size:var(--fs-kpi); font-weight:600; letter-spacing:-.02em; line-height:1.1; margin-top:var(--s2);}
.kpi__v small{font-size:.95rem; font-weight:500; color:var(--ink-sub); margin-left:2px;}
.kpi__sub{font-size:var(--fs-cap); color:var(--ink-mute); margin-top:var(--s2);}
.kpi.is-accent{background:var(--chrome); border-color:var(--chrome);}
.kpi.is-accent .kpi__k{color:rgba(255,255,255,.7);}
.kpi.is-accent .kpi__v{color:var(--warm);}
.kpi.is-accent .kpi__v small{color:rgba(255,255,255,.7);}
.kpi.is-accent .kpi__sub{color:rgba(255,255,255,.6);}

/* ---- §3-4 스탯 카드 (차분한 의미색 포인트) ----------------------------- */
.statcards{display:grid; grid-template-columns:repeat(5,1fr); gap:var(--s4);}
.statcard{border:1px solid var(--line); border-top:2px solid var(--line); border-radius:var(--radius); padding:var(--s4); background:var(--bg); box-shadow:var(--lift);}
.statcard__meta{font-size:var(--fs-cap); font-weight:600; color:var(--ink-sub);}
.statcard--form{border-top-color:var(--c-form);} .statcard--form .statcard__meta{color:var(--c-form);}
.statcard--run{border-top-color:var(--c-run);}   .statcard--run  .statcard__meta{color:var(--c-run);}
.statcard--liq{border-top-color:var(--c-liq);}   .statcard--liq  .statcard__meta{color:var(--c-liq);}
.statcard__name{font-size:1.0625rem; font-weight:500; color:var(--ink); line-height:1.4; margin-top:var(--s3); min-height:2.8em;}
.statcard__v{font-size:1.625rem; font-weight:600; letter-spacing:-.02em; color:var(--ink); margin-top:var(--s2);}
.statcard__v small{font-size:.8125rem; font-weight:500; color:var(--ink-sub); margin-left:1px;}

/* ---- §3-5 콜아웃 ------------------------------------------------------- */
.callout{border-left:2px solid var(--red); padding:var(--s2) 0 var(--s2) var(--s4); margin-top:var(--s6);}
.callout__label{color:var(--red); font-size:var(--fs-cap); font-weight:600; display:flex; align-items:center; gap:6px;}
.callout p{color:var(--ink-sub); margin-top:var(--s2); line-height:1.7;}
.callout b{color:var(--ink); font-weight:600;}

/* ---- §3-6 칩 태그 ------------------------------------------------------ */
.chips{display:flex; flex-wrap:wrap; gap:6px;}
.chip{background:var(--bg-2); color:var(--ink-sub); font-size:var(--fs-cap); padding:2px 8px; border-radius:999px; white-space:nowrap;}
.chip.is-own{color:var(--red); font-weight:600; background:var(--red-tint);}
.chip--more{background:transparent; color:var(--ink-mute); padding:2px 4px;}

/* ---- §3-7 타임라인 행 -------------------------------------------------- */
.timeline{display:flex; flex-direction:column;}
.timeline__row{display:grid; grid-template-columns:4rem 1fr 8.5rem 1fr auto; align-items:center; gap:var(--s4); padding:var(--s3) 0; border-bottom:1px solid var(--line);}
.timeline__title{font-size:var(--fs-body);}
.timeline__lp{color:var(--ink-sub); font-size:var(--fs-cap);}
.dday{justify-self:start; min-width:3.4rem; text-align:center; font-family:var(--font-en); font-size:var(--fs-cap); font-weight:600; padding:2px 8px; border-radius:4px;}
.dday--now{background:var(--st-no-bg); color:var(--red);}
.dday--soon{background:var(--st-open-bg); color:var(--st-open-fg);}
.dday--far{background:var(--bg-2); color:var(--ink-sub);}

/* ---- §2.2 상태 배지 (같은 너비·가운데) --------------------------------- */
.badge{display:inline-block; min-width:4.25rem; text-align:center; font-size:var(--fs-cap); font-weight:700; padding:3px 9px; border-radius:4px; white-space:nowrap; border:1px solid rgba(0,0,0,.08);}
.badge--open{background:var(--st-open-bg); color:var(--st-open-fg);}
.badge--closed{background:var(--st-closed-bg); color:var(--st-closed-fg);}
.badge--done{background:var(--st-done-bg); color:var(--st-done-fg);}
.badge--sel{background:var(--st-sel-bg); color:var(--st-sel-fg);}
.badge--no{background:var(--st-no-bg); color:var(--st-no-fg);}
.badge--rev{background:var(--st-rev-bg); color:var(--st-rev-fg);}

/* ---- 푸터 (회사·팀명 한 덩어리) ---------------------------------------- */
.site-footer{margin-top:var(--s10); border-top:1px solid var(--line); padding:var(--s5) 0;}
.site-footer__in{display:flex; align-items:center; justify-content:space-between; gap:var(--s4); flex-wrap:wrap;}
.site-footer__brand{display:flex; align-items:center; gap:8px; font-size:var(--fs-cap); color:var(--ink-sub);}
.site-footer__brand b{font-weight:600; color:var(--ink-sub);}
.site-footer__mark{width:14px; height:14px; border-radius:3px; background:var(--red); flex:none;}
.site-footer__meta{font-size:var(--fs-cap); color:var(--ink-mute); letter-spacing:.02em;}

/* ---- 반응형 ------------------------------------------------------------ */
@media (max-width:900px){
  .wrap{padding:0 var(--s4);}
  .cols-2{grid-template-columns:1fr; gap:var(--s6);}
  .kpi-grid{grid-template-columns:1fr 1fr;}
  .statcards{grid-template-columns:1fr 1fr;}
  .tabnav__in{gap:var(--s6); overflow-x:auto; -webkit-overflow-scrolling:touch;}
  .rank__row{grid-template-columns:1.2rem 6rem 1fr auto;}
  .site-footer__in{justify-content:center; text-align:center;}
}

/* ---- 모바일(폰) ---- */
@media (max-width:600px){
  .wrap{padding:0 var(--s2);}   /* 좌우 12px → 8px : 모든 컨텐츠 영역 +8px 확보 */
  .site-header__in{height:56px;}
  .brand__title{font-size:1rem;}
  /* 탭 5개를 모바일 한 줄에 균등 — 5개 한 줄 안에 들어가는 최대 폰트 */
  .tabnav__in{ display:flex; justify-content:space-between; gap:0; overflow-x:visible; }
  .tab{ flex:1; text-align:center; padding:11px 1px; font-size:.78rem; font-weight:500; white-space:nowrap; letter-spacing:-.01em; }
  .page-title{font-size:1.5rem;}
  .briefing{padding-top:var(--s6); padding-bottom:var(--s5);}
  .section{margin-top:var(--s8);}
  .section__title{font-size:1.0625rem;}
  /* 넓은 표는 표 자체를 가로 스크롤 → 페이지가 옆으로 밀리지 않음 */
  .ledger{display:block; overflow-x:auto; -webkit-overflow-scrolling:touch; white-space:nowrap; max-width:100%;}
  .secd__cols{grid-template-columns:1fr;}
  .smatrix{grid-template-columns:1fr;}
  .modal__box{padding:var(--s4); max-width:100%; border-radius:10px;}
  .pos-row{padding:10px 12px; gap:6px 8px;}
  .pos-tag{font-size:1rem;}
  /* 모바일: 핵심 강점·도전 기회 박스 안 chip을 2열 균등 배치 (긴 분야명은 ellipsis) */
  .pos-chips{ display: grid !important; grid-template-columns: 1fr 1fr; gap: 6px; width: 100%; flex: 1 1 100%; }
  .pos-chips .pos-chip{
    font-size: .8125rem;
    padding: 5px 10px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    text-align: center;
    box-sizing: border-box;
  }
  .kpi__v{font-size:2rem;}

  /* ── 출자사업 표 — 모바일 카드형 (사업명 큰 글자 1줄, 나머지는 작은 메타 1줄) ── */
  .biz-table{display:block; white-space:normal; overflow:visible; box-shadow:none; width:100%;}
  .biz-table colgroup, .biz-table thead{display:none;}
  .biz-table tbody{display:block;}
  .biz-table tr.biz-row{
    display:block; padding:12px 4px; border-bottom:1px solid var(--line);
    cursor:pointer; position:relative;
  }
  .biz-table tr.biz-row td{display:inline; padding:0; border:none; font-size:.8125rem; color:var(--ink-sub);}
  /* 사업명 — 큰 글자, 풀폭, 줄바꿈 */
  .biz-table .col-name{display:block; margin-bottom:6px; padding-right:60px; /* 우측 상태 배지 공간 */ }
  .biz-table .col-name .t-main{display:flex; align-items:flex-start; line-height:1.4; font-size:.9375rem; color:var(--ink); font-weight:500;}  /* 아이콘 그룹|이름 분리 — 줄바꿈이 ☆📍 침범 안 함(base의 nm-pins/nm-text 규칙 사용) */
  /* 메타 — 순번·LP·금액·날짜를 점(·)으로 구분된 한 줄로 */
  .biz-table .biz-no{display:inline; color:var(--ink-mute); margin-right:6px;}
  .biz-table .biz-no::after{content:""; }
  .biz-table .col-lp{display:inline; margin-right:8px; color:var(--ink-sub); font-weight:500;}
  .biz-table .col-lp::after{content:" · ";}
  .biz-table .amt{display:inline; font-weight:600; color:var(--ink); margin-right:8px;}
  .biz-table .amt::after{content:" · ";}
  .biz-table .col-date{display:inline; color:var(--ink-sub); margin-right:4px;}
  .biz-table .col-date + .col-date{display:none;}
  /* 상태 배지 — 우측 상단 고정 */
  .biz-table .st{position:absolute; top:12px; right:4px;}
  .biz-table .chev{display:none;}
  /* 드릴다운 행은 풀폭 */
  .biz-table tr.drill-row{display:block; padding:0;}
  .biz-table tr.drill-row td{display:block; padding:0;}

  /* ── 향후 일정 표 (.dl-table) — 카드형 grid (각 정보 한 줄씩 명확하게) ── */
  .dl-table{display:block; width:100%;}
  .dl-table colgroup, .dl-table thead{display:none;}
  .dl-table tbody{display:block;}
  .dl-table tr{
    display:grid; grid-template-columns:auto 1fr; gap:3px 8px;
    padding:10px 4px; border-bottom:1px solid var(--line); cursor:pointer;
  }
  .dl-table td{padding:0; border:none; font-size:.8125rem; color:var(--ink-sub);}
  /* 1행: D-day | 사업명 */
  .dl-table .dbox-cell{grid-row:1; grid-column:1; align-self:center;}
  .dl-table .dbox{display:inline-flex; flex-direction:column; align-items:center; padding:3px 8px; border-radius:6px; min-width:46px;}
  .dl-table .dbox__d{font-size:.75rem; font-weight:700; line-height:1.1;}
  .dl-table .dbox__t{font-size:.65rem; opacity:.85; line-height:1.1;}
  .dl-table .dl-name{grid-row:1; grid-column:2; align-self:center; font-size:.9375rem; font-weight:500; color:var(--ink); line-height:1.4; white-space:normal;}
  .dl-table .dl-name a, .dl-table .dl-name .biz-link{font-size:inherit; color:inherit;}
  /* 2~4행: LP, 분야, 금액 — 각각 한 줄, 컬럼 1~2 통합 */
  .dl-table .dl-lp   { grid-row:2; grid-column:1/3; color:var(--ink-sub); }
  .dl-table .dl-secs { grid-row:3; grid-column:1/3; }
  .dl-table .dl-amt  { grid-row:4; grid-column:1/3; font-weight:600; color:var(--ink); }
  .dl-table .dl-secs .chip{font-size:.7rem; padding:2px 6px; margin-right:3px;}
  .dl-table .dl-secs:empty, .dl-table .dl-amt:empty{display:none;}

  /* 드릴다운 안의 표·타임라인은 작게 */
  .drill__inner{padding:var(--s4);}
  .biz-timeline{gap:2px; padding:6px 8px; font-size:.75rem;}
  .tl-step{padding:3px 6px;}

  /* 모달 — 화면 거의 꽉 차게 + 상단 여백 작게 */
  .modal{padding:8px;}
  .modal__box{max-height:92vh; padding:var(--s4) var(--s3); overflow-y:auto;}
  .modal__title{font-size:1.0625rem;}
  .modal table{font-size:.8125rem;}

  /* 도구바(검색·필터·정렬) — 한 줄에 안 들어가면 줄바꿈 */
  .toolbar{display:flex; flex-direction:column; gap:8px;}
  .toolbar__search, .toolbar__filters, .toolbar__sort{width:100%;}
  .toolbar__filters{flex-wrap:wrap;}
  .toolbar__sort{font-size:.875rem;}

  /* 분야 필터 칩 — 좁은 폭에서 줄바꿈 */
  .sector-filter{flex-direction:column; gap:6px; padding:var(--s2) var(--s3);}
  .sector-filter__chips{gap:4px;}
  .sec-chip{padding:4px 8px; font-size:.75rem;}

  /* KPI 카드 — 2열은 좁아서 1열 + 컴팩트 */
  .kpi-grid{grid-template-columns:1fr 1fr; gap:8px;}
  .kpi{padding:14px;}
  .kpi__k{font-size:.6875rem;}
  .kpi__v{font-size:1.625rem;}
  .kpi__sub{font-size:.7rem;}

  /* 분야 칩 — 모바일: 모든 매트릭스 박스에서 한 줄에 2개씩 균일 배치 (긴 분야명도 ellipsis로 잘림) */
  .chip--sec{font-size:.75rem; padding:4px 8px;}
  .quad{padding:var(--s3);}
  .quad__label{font-size:.875rem;}
  .quad__items{gap:4px;}
  .quad__items .chip--sec{
    flex: 0 0 calc(50% - 2px);
    max-width: calc(50% - 2px);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    box-sizing: border-box;
  }

  /* 사업 그룹 카드 / 리그 / GP 리스트 */
  .gp-list{gap:4px;}
  .gp{padding:3px 7px; font-size:.8125rem;}

  /* 콘텐츠가 모바일 뷰포트보다 넓어지는 것 방지 */
  body{overflow-x:hidden;}
  main.wrap{overflow-x:hidden;}

  /* ── 랭킹 바 모바일: Grid + 분야명 고정폭(가장 긴 분야명 기준) → 막대 시작점 정렬 ──
       val(금액+건수) 폭을 명시해서 화면 밖 잘림 방지. */
  .rank__row{
    display: grid;
    grid-template-columns: 0.9rem 6.4rem 1fr 4.5rem;
    column-gap: 0;
    padding: 7px 0;
  }
  .rank__no    { font-size: .75rem; }
  .rank__label { font-size: .8125rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding-right: 4px; }
  .rank__track { height: 13px; border-radius: 7px; margin: 0; }
  .rank__fill  { border-radius: 7px; min-width: 10px; }
  .rank__val   { display: flex; gap: 3px; font-size: .7rem; padding-left: 4px; align-items: baseline; justify-content: flex-end; }
  .rank__amt   { font-weight: 700; font-size: .75rem; }
  .rank__sub   { font-size: .625rem; color: var(--ink-mute); }
  /* 자사 강점: 빨간 라벨 + 빨간 막대 (.is-own 동작 유지) */
  .rank__row.is-own .rank__label{ color: var(--red); font-weight: 700; }
}

/* =========================================================================
   페이지 컴포넌트 — 출자사업(원장 상세) 등에서 사용. 토큰만 사용.
   ========================================================================= */

/* ---- 툴바 (검색·필터·정렬) -------------------------------------------- */
.toolbar{display:flex; align-items:center; gap:var(--s4); flex-wrap:wrap; margin-top:var(--s6);}
.toolbar__search{flex:1; min-width:220px; display:flex; align-items:center; gap:var(--s2); border:1px solid var(--line); border-radius:var(--radius); padding:0 var(--s4); height:42px; background:var(--bg);}
.toolbar__search svg{flex:none; stroke:var(--ink-mute);}
.toolbar__search input{flex:1; border:0; outline:0; background:transparent; font-family:var(--font); font-size:var(--fs-body); color:var(--ink);}
.toolbar__search input::placeholder{color:var(--ink-mute);}
.toolbar__filters{display:flex; gap:6px; flex-wrap:wrap;}
.toolbar__filters .chip{cursor:pointer; user-select:none; padding:6px 12px;}
.toolbar__filters .chip.is-active{background:var(--ink); color:#fff;}
.toolbar__filters .chip.is-active-own{background:var(--red); color:#fff;}
.toolbar__sort{height:42px; border:1px solid var(--line); border-radius:var(--radius); padding:0 var(--s3); background:var(--bg); font-family:var(--font); font-size:var(--fs-cap); color:var(--ink-sub); cursor:pointer;}
.count-info{margin:var(--s5) 0 var(--s3); font-size:var(--fs-cap); color:var(--ink-mute);}

/* ---- 원장 본문 셀 보강 + 클릭/드릴 ----------------------------------- */
.ledger td.amt{text-align:right; font-variant-numeric:tabular-nums; white-space:nowrap; font-weight:500;}
.ledger th.col-date,.ledger td.col-date{text-align:center; white-space:nowrap; font-variant-numeric:tabular-nums; color:var(--ink-sub); font-size:var(--fs-cap);}
.ledger tr.biz-row{cursor:pointer;}
.ledger .star{color:var(--red); margin-right:4px;}
.ledger .chev .chev-i{display:inline-block; transition:transform .15s;}
.ledger tr.is-expanded .chev .chev-i{transform:rotate(90deg); color:var(--red);}

/* ---- 드릴다운 상세 행 ------------------------------------------------- */
.drill{display:none;}
.drill.is-open{display:table-row;}
.drill > td{background:var(--bg-2); padding:0; border-bottom:1px solid var(--line-ink);}
.drill__inner{padding:var(--s5) var(--s4);}
.drill__head{font-size:var(--fs-body); color:var(--ink); font-weight:500; margin-bottom:var(--s5);}
.drill__head a{color:var(--navy-soft); font-weight:600;}
/* 분야별 표 ↔ 아래 공고문 간격 + 정렬 */
.lg-tablewrap{margin:var(--s5) 0;}
.lg-table, .sel-table{width:100%;}
.lg-tablewrap + .att{margin-top:var(--s6, 22px);}
.drill__sub{font-size:var(--fs-cap); font-weight:600; color:var(--ink-sub); margin-bottom:7px;}
.drill__sectors{display:flex; flex-wrap:wrap; align-items:center; gap:5px; margin-bottom:12px;}
.drill__sectors .drill__sub{margin:0 4px 0 0;}
.src-news{display:inline-block; font-size:var(--fs-label); font-weight:700; color:#0C447C; background:#DCEAFB; border-radius:4px; padding:1px 6px; margin-left:6px; vertical-align:middle; white-space:nowrap;}
/* 모달 표에서 사업명 → 출자사업 페이지로 점프 */
/* 사업명 링크: 점선 밑줄 없이, 호버 시 옅은 음영(red-tint)만 — 표 안에서 깔끔하게 */
.biz-link{color:var(--ink); cursor:pointer; padding:1px 4px; margin:-1px -4px; border-radius:4px; transition:background .12s, color .12s;}
.biz-link:hover{background:var(--red-tint); color:var(--red);}
/* 뉴스 검증 라벨 — confidence 라벨에 따라 톤 차등 */
.src-news-high{display:inline-block; font-size:var(--fs-label); font-weight:700; color:#27500A; background:#EAF3DE; border:1px solid #C8DDB0; border-radius:4px; padding:1px 6px; margin-left:6px; vertical-align:middle; white-space:nowrap;}
.src-news-mid {display:inline-block; font-size:var(--fs-label); font-weight:700; color:#0C447C; background:#DCEAFB; border:1px solid #B6D2F0; border-radius:4px; padding:1px 6px; margin-left:6px; vertical-align:middle; white-space:nowrap;}
.src-news-low {display:inline-block; font-size:var(--fs-label); font-weight:700; color:#791F1F; background:#FCEBEB; border:1px solid #E8C0C0; border-radius:4px; padding:1px 6px; margin-left:6px; vertical-align:middle; white-space:nowrap;}
.src-review{display:inline-block; font-size:var(--fs-label); font-weight:700; color:#854F0B; background:#FAEEDA; border-radius:4px; padding:1px 6px; margin-left:6px; vertical-align:middle; white-space:nowrap;}

/* ---- 단계 타임라인 (business.html 드릴다운) — 가로 1줄 강제 ----------- */
/* 주의: .timeline 은 schedule.html(세로 카드 리스트)가 이미 사용 중이라 충돌.
        business 드릴다운용은 .biz-timeline 으로 별도 클래스로 분리한다. */
.biz-timeline{
  display:flex; flex-direction:row; align-items:center; flex-wrap:nowrap;
  gap:4px;
  padding:8px 12px;
  background:var(--bg-2);
  border-radius:var(--radius);
  margin-bottom:var(--s3);
  font-size:.75rem;
  overflow-x:auto;                /* 좁은 화면에선 가로 스크롤 */
  -webkit-overflow-scrolling:touch;
  white-space:nowrap;
}
.biz-timeline::-webkit-scrollbar{ height:4px; }
.biz-timeline::-webkit-scrollbar-thumb{ background:var(--line2); border-radius:2px; }

.tl-step{
  display:inline-flex; align-items:center; gap:5px;
  padding:3px 9px;
  background:var(--bg); border:1px solid var(--line); border-radius:999px;
  flex:0 0 auto;                  /* 줄어들지 않음 */
  white-space:nowrap;
}
.tl-step.is-done   { background:#EAF3DE; border-color:#C8DDB0; color:#27500A; }
.tl-step.is-current{ background:var(--chrome); border-color:var(--chrome); color:#fff; font-weight:600; }
.tl-step.is-pending{ background:transparent; border-color:var(--line); color:var(--ink-mute); }

.tl-no{ font-family:var(--font-en); font-weight:700; font-size:.8125rem; opacity:.85; }
.tl-lbl{ font-weight:500; }
.tl-date{ font-size:.6875rem; opacity:.8; font-variant-numeric:tabular-nums; }
.tl-cnt{ font-size:.6875rem; font-weight:600; padding:0 5px; border-radius:3px;
         background:rgba(255,255,255,.25); margin-left:2px; }
.tl-step.is-done .tl-cnt{ background:rgba(39,80,10,.15); }
.tl-step.is-pending .tl-cnt{ background:transparent; }

.tl-sep{ color:var(--ink-mute); font-size:.75rem; padding:0; flex:0 0 auto; }
.sel-gp-table{width:100%;}
.sel-gp-table th{font-weight:600;}
.sel-gp-table td{vertical-align:top;}
.sel-src{margin-top:8px; text-align:right;}
.sel-src a{font-size:.8125rem; color:var(--ink-sub); text-decoration:none;}
.sel-src a:hover{color:var(--red);}
.gp-list{display:flex; flex-wrap:wrap; gap:5px 10px;}
.gp{display:inline-block; font-size:var(--fs-cap); color:var(--ink); white-space:nowrap;}
.gp__amt{color:var(--ink-sub); font-weight:600;}
.gp--own{color:var(--red); font-weight:700;}
/* 분야 클릭 → 상세 패널 */
.chip--sec{cursor:pointer; font-size:.85rem; padding:5px 12px; transition:background .12s, color .12s, border-color .12s;}
.quad__items.is-collapsed .chip--extra{display:none;}
.chip--more{cursor:pointer; font-size:.85rem; padding:5px 10px;}
.chip--more:hover{background:var(--bg-2);}
.chip--sec:hover{background:var(--bg-2);}
.chip--sec.is-open{background:var(--navy-soft); color:#fff; border-color:var(--navy-soft);}
.chip--sec.is-open b{color:#fff;}
.sec-detail{margin-top:var(--s4);}
.sec-detail:empty{display:none; margin:0;}
.sec-detail--grid{grid-column:1 / -1; margin-top:0;}
.sec-detail--grid:empty{display:none;}
.secd{border:1px solid var(--line); border-radius:8px; padding:var(--s4) var(--s5); background:var(--bg-2);}
.secd__head{font-size:1.1rem; font-weight:700;}
.secd--own .secd__head{color:var(--red);}
.secd__badge{font-size:var(--fs-label); font-weight:700; color:#fff; background:var(--red); border-radius:4px; padding:1px 7px; vertical-align:middle; margin-left:6px;}
.secd__kw{font-size:var(--fs-cap); color:var(--ink-sub); margin:4px 0 var(--s4);}
.secd__cols{display:grid; grid-template-columns:1fr 1fr; gap:var(--s4);}
.secd__col{background:#fff; border:1px solid var(--line); border-top:3px solid var(--line); border-radius:6px; padding:var(--s3) var(--s4);}
.secd__col--mkt{border-top-color:var(--navy-soft);}
.secd__col--own{border-top-color:var(--red);}
.secd__k{font-size:var(--fs-cap); font-weight:700;}
.secd__col--mkt .secd__k{color:var(--navy-soft);}
.secd__col--own .secd__k{color:var(--red);}
.secd__v{font-size:1rem; font-weight:700; margin:3px 0 7px; line-height:1.45;}
.secd__list{font-size:var(--fs-cap); color:var(--ink);}
.secd__row{padding:3px 0; border-bottom:1px solid var(--line);}
.secd__row:last-child{border-bottom:0;}
/* 분야 상세 카드 — 시장·공고 / 자사 투자 표 (고정 높이 스크롤) */
.secd__scroll{max-height:300px; overflow-y:auto; margin-top:6px;}
.secd__scroll thead th{position:sticky; top:0; background:#fff; z-index:1;}
.secd__cotable{font-size:var(--fs-cap);}
.secd__cotable th,.secd__cotable td{padding:2px 6px; line-height:1.3; vertical-align:top;}
.secd__cotable .t-main{white-space:normal; word-break:break-word;}   /* 출자사업명 전체 보이도록 줄바꿈 */
.secd__cotable .num{white-space:nowrap; font-variant-numeric:tabular-nums;}
.secd__cotable td.num b{color:var(--red);}
.secd__hint{font-size:var(--fs-label); color:var(--ink-mute); margin-top:4px; text-align:right;}
.secd__link{color:inherit; text-decoration:none; cursor:pointer;}
.secd__link:hover{color:var(--red); text-decoration:underline;}
@keyframes bizflash{0%,40%{background:var(--red-tint);}100%{background:transparent;}}
.biz-row--flash > td{animation:bizflash 2.2s ease-out;}

/* Summary 전략 포지셔닝 — 컴팩트 요약 스트립(자사분석의 풀 매트릭스와 차별) */
.pos-sum{display:flex; flex-direction:column; gap:10px; margin-top:10px;}
.pos-row{display:flex; align-items:center; gap:10px 16px; flex-wrap:wrap; padding:13px 18px; border-radius:var(--radius); background:var(--bg-2);}
.pos-row--core{border-left:4px solid #2e7d32;}
.pos-row--opp{border-left:4px solid #e08a00;}
.pos-tag{font-weight:700; font-size:1.0625rem; white-space:nowrap;}
.pos-act{font-size:.8125rem; color:var(--ink-mute); white-space:nowrap; margin-right:2px;}
.pos-chips{display:flex; flex-wrap:wrap; gap:8px; flex:1;}
.pos-chip{font-size:.9375rem; padding:4px 13px; border-radius:999px; background:#fff; border:1px solid var(--line); white-space:nowrap;}
.pos-chip b{color:var(--red); margin-left:4px; font-weight:700; font-variant-numeric:tabular-nums;}
.pos-chip--more,.pos-none{font-size:.875rem; color:var(--ink-mute); background:transparent; border:none; padding:4px 4px;}
.pos-foot{font-size:.875rem; color:var(--ink-sub); padding-left:2px; margin-top:2px;}
.pos-foot b{color:var(--navy-soft);}
.pos-foot a{color:var(--red); text-decoration:none; font-weight:600;}
.pos-foot a:hover{text-decoration:underline;}
.sec-basis{font-size:var(--fs-label); color:var(--ink-mute); margin:0 0 8px; letter-spacing:.01em;}
.att__hint{font-size:var(--fs-label); color:var(--ink-mute); margin-left:4px; font-weight:400;}
.secd__empty{font-size:var(--fs-cap); color:var(--ink-mute); border:1px dashed var(--line); border-radius:5px; padding:14px; text-align:center; margin-top:4px; background:repeating-linear-gradient(45deg,#fafafa,#fafafa 6px,#f3f3f3 6px,#f3f3f3 12px);}
@media (max-width:640px){ .secd__cols{grid-template-columns:1fr;} }
/* 공용 모달 */
.modal{position:fixed; inset:0; background:rgba(20,28,40,.5); display:none; align-items:flex-start; justify-content:center; z-index:1000; padding:5vh 16px; overflow:auto;}
.modal.is-open{display:flex;}
.modal__box{background:#fff; border-radius:12px; max-width:760px; width:100%; padding:var(--s6); box-shadow:0 20px 60px rgba(0,0,0,.25); position:relative; max-height:90vh; overflow:auto;}
.modal__x{position:absolute; top:10px; right:14px; border:0; background:none; font-size:26px; line-height:1; cursor:pointer; color:var(--ink-sub);}
.modal__x:hover{color:var(--ink);}
.modal__title{font-size:1.3rem; font-weight:700; margin-bottom:var(--s4); padding-right:28px;}
.mstat{display:flex; flex-wrap:wrap; gap:14px 24px; padding:12px 14px; background:var(--bg-2); border-radius:8px; margin-bottom:var(--s5); font-size:var(--fs-cap);}
.mstat--tight{margin-bottom:10px;}   /* 모달서 바로 아래 표를 위로 당김(중간 제목 없이) */
.mstat b{font-size:1.05rem; color:var(--ink);}
.clk{cursor:pointer;}
.clk:hover{color:var(--navy-soft);}
/* 행 전체 클릭형: 빨강 밑줄 대신 부드러운 배경 하이라이트 */
.rank__row.clk, tbody tr.clk{cursor:pointer; transition:background .12s;}
.rank__row.clk:hover, tbody tr.clk:hover{background:var(--bg-2);}
.rank__row.clk:hover .rank__label{color:var(--navy-soft);}
/* KPI 카드 클릭형: 살짝 떠오르는 효과 */
.kpi.clk{transition:box-shadow .15s, transform .12s;}
.kpi.clk:hover{box-shadow:0 6px 18px rgba(20,28,40,.13); transform:translateY(-2px);}
/* 날짜 등 줄바꿈 방지 */
.col-date{white-space:nowrap;}
/* 선정결과 '분야' 칸 — 폭 고정으로 패널마다 들쭉날쭉/세로깨짐(분→야) 방지, 헤더는 줄바꿈 금지 */
.sel-gp-table th:first-child{white-space:nowrap;}
.sel-gp-table th:first-child, .sel-gp-table td:first-child{width:6rem; min-width:6rem;}
.sel-gp-table td:first-child{white-space:normal; word-break:keep-all; vertical-align:top;}
/* 드릴 표 일관화: 헤더 라벨 통일(작은 회색), 행 패딩/정렬 통일 */
.sel-gp-table th, .lg-table th{font-size:var(--fs-label); font-weight:600; color:var(--ink-sub); text-align:left; padding:6px 10px; white-space:nowrap;}
.sel-gp-table td, .lg-table td{padding:8px 10px; vertical-align:top;}
.lg-table .num, .sel-gp-table .num, .lg-table th.num{text-align:right;}
/* 운용사 모달 — 최근 12개월 윈도우 밖(과거) 선정 행은 흐리게 (전체 이력은 보존하되 시각적으로 구분) */
.ledger tr.gp-old td{color:var(--ink-mute); opacity:.6;}
/* 포트폴리오 분야 상세(투자기업 명단) 컴팩트 */
#pf-sec-detail .secd{padding:var(--s3) var(--s4);}
#pf-sec-detail .secd__head{font-size:1rem; margin-bottom:6px;}
#pf-sec-detail .ledger{font-size:var(--fs-cap);}
#pf-sec-detail .ledger td, #pf-sec-detail .ledger th{padding:3px 10px;}
/* 펀드 모달(컴팩트·무스크롤): 25개 펀드 한 화면 */
.fm-cap{font-size:var(--fs-cap); color:var(--ink-mute); margin:-2px 0 var(--s3);}
.ledger.fundmodal td, .ledger.fundmodal th{padding:3px 10px; font-size:var(--fs-cap);}
.ledger.fundmodal tbody tr.fm-liq .t-main{color:var(--ink-sub); font-weight:400;}
.fm-st{display:inline-block; font-size:10px; line-height:1.4; padding:1px 7px; border-radius:999px; white-space:nowrap;}
.fm-st--run{background:#E2F0EC; color:#1F5849;}
.fm-st--liq{background:var(--bg-2); color:var(--ink-mute);}
.lp-mf{cursor:pointer;}
.lp-mf:hover{color:var(--navy-soft);}
.more-n{color:var(--ink-mute); font-size:var(--fs-cap); white-space:nowrap;}
/* 분야별 트랙레코드 정렬·기간 컨트롤 */
.trk-ctrl{display:flex; flex-wrap:wrap; align-items:center; gap:var(--s3) var(--s4); margin:var(--s3) 0 var(--s4);}
.trk-seg{display:inline-flex; border:1px solid var(--line); border-radius:7px; overflow:hidden;}
.trk-seg button{font-family:inherit; font-size:var(--fs-cap); color:var(--ink-sub); background:#fff; border:0; border-left:1px solid var(--line); padding:5px 12px; cursor:pointer; transition:background .12s,color .12s;}
.trk-seg button:first-child{border-left:0;}
.trk-seg button:hover{background:var(--bg-2);}
.trk-seg button.is-on{background:var(--navy-soft); color:#fff; font-weight:600;}
.trk-range{display:inline-flex; align-items:center; gap:5px; font-size:var(--fs-cap); color:var(--ink-sub);}
.trk-range input{width:4rem; font-family:inherit; font-size:var(--fs-cap); padding:4px 6px; border:1px solid var(--line); border-radius:5px;}
.trk-range button{font-family:inherit; font-size:var(--fs-cap); padding:4px 11px; border:1px solid var(--line); border-radius:5px; background:var(--bg-2); cursor:pointer;}
.trk-range button:hover{background:var(--navy-soft); color:#fff; border-color:var(--navy-soft);}
.trk-note{font-size:var(--fs-cap); color:var(--ink-mute);}
.dlbtn--end{margin-left:auto;}
.colhead--row{display:flex; align-items:flex-end; justify-content:space-between; gap:var(--s4);}
.dlbtn{flex:0 0 auto; display:inline-flex; align-items:center; gap:6px; font-family:inherit; font-size:var(--fs-cap); font-weight:500; color:var(--ink-sub); background:#fff; border:1px solid var(--line); border-radius:6px; padding:5px 11px; cursor:pointer; white-space:nowrap; transition:background .12s,color .12s,border-color .12s;}
.dlbtn svg{flex:0 0 auto; display:block;}
.dlbtn:hover{background:#F2F8F4; color:#1D6F42; border-color:#1D6F42;}
.sel-table .chips{margin:0;}
.sel-table td{vertical-align:top;}

/* 선정 결과 블록 (드릴다운·선정 현황 공통) */
.sel{margin-bottom:var(--s5);}
.sel__head{font-size:var(--fs-cap); font-weight:600; color:var(--ink); margin-bottom:6px;}
.sel__sum{font-size:var(--fs-cap); color:var(--ink-sub); margin-bottom:8px;}
.sel__sum b{color:var(--ink); font-weight:600;}
.sel__more{font-size:var(--fs-label); color:var(--ink-mute); margin-left:4px; align-self:center;}
.sel-row{cursor:pointer;}
.sel-detail > td{background:var(--bg-2); padding:0; border-bottom:1px solid var(--line-ink);}
.sel-detail__in{padding:var(--s4);}

/* ---- 리그 카드 -------------------------------------------------------- */
.lg-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:var(--s4);}
.lg-card{border:1px solid var(--line); border-radius:var(--radius); padding:var(--s4); background:var(--bg);}
.lg-card.is-own{border-color:var(--red); background:var(--red-tint);}
.lg-card__top{display:flex; align-items:flex-start; justify-content:space-between; gap:var(--s3);}
.lg-card__name{font-size:var(--fs-body); font-weight:600; color:var(--ink);}
.lg-card__org{font-size:var(--fs-cap); color:var(--ink-mute); margin-top:2px;}
.lg-tag{flex:none; font-size:var(--fs-label); font-weight:600; padding:2px 8px; border-radius:4px; white-space:nowrap;}
.lg-tag--int{background:var(--red); color:#fff;}
.lg-tag--rev{background:var(--st-rev-bg); color:var(--st-rev-fg);}
.lg-tag--non{background:var(--bg-2); color:var(--ink-mute);}
.lg-figs{display:grid; grid-template-columns:repeat(3,1fr); gap:var(--s3); margin-top:var(--s4);}
.lg-figs__l{font-size:var(--fs-label); color:var(--ink-mute);}
.lg-figs__v{font-size:1.05rem; font-weight:600; color:var(--ink); font-variant-numeric:tabular-nums; margin-top:2px;}
.lg-figs__v small{font-size:.75rem; font-weight:500; color:var(--ink-sub); margin-left:1px;}

/* ---- 출자자 배분 바 (재정/기금/은행/기타) ----------------------------- */
.alloc{margin-top:var(--s4);}
.alloc__label{display:flex; justify-content:space-between; gap:var(--s3); font-size:var(--fs-label); color:var(--ink-sub); margin-bottom:6px;}
.alloc__bar{display:flex; height:10px; border-radius:999px; overflow:hidden; background:var(--bg-2);}
.alloc__seg{height:100%;}
.alloc__seg--fiscal{background:var(--chrome);}
.alloc__seg--fund{background:var(--navy-soft);}
.alloc__seg--bank{background:var(--c-form);}
.alloc__seg--other{background:var(--ink-mute);}
.alloc__legend{display:flex; flex-wrap:wrap; gap:var(--s4); margin-top:8px;}
.alloc__leg{display:flex; align-items:center; gap:5px; font-size:var(--fs-label); color:var(--ink-sub);}
.alloc__dot{width:8px; height:8px; border-radius:2px; flex:none;}
.alloc__dot--fiscal{background:var(--chrome);}
.alloc__dot--fund{background:var(--navy-soft);}
.alloc__dot--bank{background:var(--c-form);}
.alloc__dot--other{background:var(--ink-mute);}

/* ---- 첨부 파일 -------------------------------------------------------- */
.att{margin-bottom:var(--s4);}
.att__head{font-family:var(--font-en); font-size:var(--fs-label); font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-sub); margin-bottom:8px;}
.att__list{display:flex; flex-direction:column; gap:6px;}
.att__item{display:flex; align-items:center; gap:10px; padding:9px 12px; background:var(--bg); border:1px solid var(--line); border-radius:8px; font-size:var(--fs-cap); color:var(--ink); transition:border-color .12s;}
.att__item:hover{border-color:var(--navy-soft);}
.att__ext{flex:none; width:34px; height:20px; background:var(--navy); color:#fff; border-radius:4px; font-family:var(--font-en); font-size:9px; font-weight:600; display:grid; place-items:center; letter-spacing:.04em;}
.att__name{flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.att__arrow{color:var(--ink-mute);}

/* ---- 페이지네이션 ----------------------------------------------------- */
.pagination{margin:var(--s5) 0; display:flex; justify-content:center;}
.pagination__in{display:flex; gap:4px; align-items:center;}
.pagi-btn{min-width:34px; height:34px; padding:0 10px; border:1px solid var(--line); background:var(--bg); color:var(--ink-sub); border-radius:8px; font-family:var(--font-en); font-size:var(--fs-cap); font-weight:500; cursor:pointer; font-variant-numeric:tabular-nums; transition:all .12s;}
.pagi-btn:hover:not(:disabled){border-color:var(--navy); color:var(--navy);}
.pagi-btn:disabled{opacity:.4; cursor:not-allowed;}
.pagi-btn.is-active{background:var(--navy); color:#fff; border-color:var(--navy); font-weight:600;}
.pagi-ellipsis{padding:0 4px; color:var(--ink-mute); font-size:var(--fs-cap);}

/* ---- 페이지 컴포넌트 반응형 ------------------------------------------- */
@media (max-width:900px){
  .lg-grid{grid-template-columns:1fr;}
  .toolbar__sort{flex:1;}
}

/* ---- 정보 카드 (강점·도전 상세 목록) + 원장 순위 셀 -------------------- */
.icard-list{display:flex; flex-direction:column; gap:var(--s2);}
.icard{border:1px solid var(--line); border-radius:var(--radius); padding:var(--s3) var(--s4); background:var(--bg);}
.icard.is-strength{border-left:2px solid var(--red);}
.icard__title{font-size:var(--fs-body); font-weight:600; color:var(--ink);}
.icard__body{font-size:var(--fs-cap); color:var(--ink-sub); margin-top:4px; line-height:1.6;}
.icard__body .ex{color:var(--ink-mute);}
.ledger td.rk,.ledger th.rk{color:var(--ink-mute); font-variant-numeric:tabular-nums; width:2.2rem; text-align:center;}

/* =========================================================================
   선정 현황(경쟁 지형) 컴포넌트 — 인라인 바 랭킹표 · 타깃 보드. 토큰만 사용.
   ========================================================================= */
.bar-cell-inner{display:flex; align-items:center; gap:10px; min-width:160px;}
.inline-bar{flex:1; height:8px; background:var(--bg-2); border-radius:4px; overflow:hidden; min-width:50px;}
.inline-bar__fill{display:block; height:100%; border-radius:4px; background:linear-gradient(90deg,var(--chrome),var(--navy-soft));}
.inline-bar__fill.alt{background:linear-gradient(90deg,#3D6A8A,#5E8AAE);}
.inline-bar__fill.hot{background:linear-gradient(90deg,#9E0000,var(--red));}
.inline-bar__val{font-size:var(--fs-cap); color:var(--ink); font-weight:600; font-variant-numeric:tabular-nums; white-space:nowrap; text-align:right; min-width:62px;}
.more-toggle{margin-top:var(--s4); font-size:var(--fs-cap); color:var(--navy-soft); background:transparent; border:1px solid var(--line); border-radius:999px; padding:6px 14px; cursor:pointer; transition:all .12s;}
.more-toggle:hover{background:var(--bg-2); border-color:var(--navy-soft);}

/* 타깃 보드 */
.board-sum{font-size:var(--fs-cap); color:var(--ink-sub); margin-bottom:var(--s4);}
.board-sum b{color:var(--ink); font-weight:600;}
.board-collapse > summary{cursor:pointer; list-style:none; padding:var(--s3) var(--s4); background:var(--bg-2); border-radius:var(--radius); font-size:var(--fs-cap); color:var(--ink-sub); user-select:none;}
.board-collapse > summary::-webkit-details-marker{display:none;}
.board-collapse > summary b{color:var(--ink); font-weight:600;}
.board-collapse__hint{color:var(--red); font-weight:600; margin-left:6px;}
.board-collapse[open] .board-collapse__hint{display:none;}
.board-collapse > table{margin-top:var(--s3);}
.tag-rel{display:inline-block; font-size:var(--fs-label); font-weight:600; color:var(--st-open-fg); background:var(--st-open-bg); border-radius:4px; padding:2px 7px; white-space:nowrap;}
.tag-new{display:inline-block; font-size:var(--fs-label); color:var(--ink-mute); background:var(--bg-2); border-radius:4px; padding:2px 7px; white-space:nowrap;}
.segs{display:flex; flex-wrap:wrap; gap:4px;}
.seg{display:inline-block; font-size:var(--fs-label); color:var(--ink-sub); background:var(--bg-2); border-radius:4px; padding:1px 7px; white-space:nowrap;}
.seg.hot{background:var(--red-tint); color:var(--red); font-weight:600;}
.ledger td.urgent{color:var(--red); font-weight:600;}

/* ---- 타임라인 보조 날짜줄 (향후 일정) --------------------------------- */
.timeline__date{font-size:var(--fs-label); color:var(--ink-mute); margin-top:2px;}
.timeline__lp{overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}

/* =========================================================================
   자사 분석 — 자금 성격 스택(두껍게·라벨·또렷한 색) · 펀드 운용 요약 · 카드 그리드
   ========================================================================= */
.cap-stack{display:flex; height:34px; border-radius:8px; overflow:hidden; background:var(--bg-2);}
.cap-stack__seg{display:flex; align-items:center; justify-content:center; color:#fff; font-size:var(--fs-cap); font-weight:600; white-space:nowrap; overflow:hidden; min-width:0;}
.cap-legend{display:flex; flex-wrap:wrap; gap:var(--s4); margin-top:var(--s3);}
.cap-legend__item{display:flex; align-items:center; gap:6px; font-size:var(--fs-cap); color:var(--ink-sub);}
.cap-legend__item b{color:var(--ink); font-weight:600;}
.cap-legend__dot{width:10px; height:10px; border-radius:3px; flex:none;}
.cap-badge{display:inline-block; font-size:var(--fs-label); font-weight:600; padding:2px 8px; border-radius:4px; white-space:nowrap;}
.fstat{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden;}
.fstat__cell{background:var(--bg); padding:var(--s4) var(--s5);}
.fstat__k{font-size:var(--fs-cap); color:var(--ink-sub);}
.fstat__v{font-size:1.5rem; font-weight:600; color:var(--ink); margin-top:4px; letter-spacing:-.01em;}
.fstat__v small{font-size:.8125rem; font-weight:500; color:var(--ink-sub); margin-left:1px;}
.fstat__sub{font-size:var(--fs-label); color:var(--ink-mute); margin-top:2px;}
.icard-grid{display:grid; grid-template-columns:1fr 1fr; gap:var(--s3);}
@media (max-width:900px){ .fstat{grid-template-columns:1fr;} .icard-grid{grid-template-columns:1fr;} }

/* 선정 결과 표 — 열 고정·말줄임·분야 폰트↓·선정 배지 */
.sel-table{table-layout:fixed; font-size:.8125rem;}              /* 출자사업 목록과 동일 압축 */
.sel-table col.cg-date{width:5.6rem;}
.sel-table col.cg-lp{width:6.3rem;}
.sel-table col.cg-cnt{width:4.6rem;}
.sel-table col.cg-sector{width:9rem;}
.sel-table col.cg-chev{width:1.5rem;}
.sel-table th,.sel-table td{padding-left:8px; padding-right:8px;}
.sel-table th{white-space:nowrap;}
.sel-table .c-name{font-weight:500; font-size:.9rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.sel-table .c-lp{font-size:.78rem; color:var(--ink-sub); white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.sel-table .c-cnt{white-space:nowrap; overflow:visible;}
.sel-table .selcount{width:4em; font-size:.66rem; padding:2px 0;}   /* 좁아진 칸에 맞춰 배지 축소 */
.sel-table .c-sector{font-size:.7rem; color:var(--ink-sub); line-height:1.5; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.sel-table .col-date{font-size:.72rem; letter-spacing:-.02em;}
.selcount{display:inline-block; width:5em; text-align:center; background:var(--navy); color:#fff; font-size:var(--fs-cap); font-weight:600; padding:2px 0; border-radius:999px; white-space:nowrap; box-sizing:border-box;}
/* 구분/내용 요약 표 */
.kv-table col.cg-k{width:12rem;}
.kv-table .kv-k{font-weight:600; color:var(--ink);}
.kv-table .kv-v{color:var(--ink-sub); line-height:1.6;}

/* =========================================================================
   2×2 전략 매트릭스 (자사 강점·포지셔닝) — 분석 영역 시각화
   ========================================================================= */
.smatrix__cap{font-size:.8125rem; color:var(--ink-sub); margin-bottom:var(--s3); line-height:1.5;}
.smatrix{display:grid; grid-template-columns:1fr 1fr; gap:var(--s3);}
.quad{border:1px solid var(--line); border-top:3px solid var(--line-ink); border-radius:var(--radius); padding:var(--s4); min-height:7.5rem;}
.quad--core{border-top-color:#27500A; background:#FAFCF5;}
.quad--opp{border-top-color:#854F0B; background:#FFFCF4;}
.quad--niche{border-top-color:#0C447C; background:#F8FBFE;}
.quad--watch{border-top-color:#9A9892; background:var(--bg);}
.quad__label{font-size:1.125rem; font-weight:700; color:var(--ink); display:flex; align-items:baseline; gap:8px; margin-bottom:var(--s3);}
.quad__label span{font-size:var(--fs-cap); font-weight:500; color:var(--ink-mute);}
.quad__items{display:flex; flex-wrap:wrap; align-items:center; gap:6px;}
.quad__items .chip b{margin-left:3px; color:var(--ink); font-variant-numeric:tabular-nums;}
.quad__empty{font-size:var(--fs-cap); color:var(--ink-mute);}
@media (max-width:900px){ .smatrix{grid-template-columns:1fr;} }

/* 출자사업 목록 표 — 열 고정(헤더↔본문 정렬)·행 번호·드릴 분야 요약 */
.biz-table{table-layout:fixed; font-size:.8125rem;}                /* 전체 살짝 축소(15→13px) */
.biz-table col.cg-no{width:2.1rem;}
.biz-table col.cg-lp{width:7rem;}
.biz-table col.cg-amt{width:5.2rem;}
.biz-table col.cg-date{width:5.6rem;}
.biz-table col.cg-st{width:4.7rem;}
.biz-table col.cg-chev{width:1.6rem;}
.biz-table th,.biz-table td{overflow:hidden; padding-left:8px; padding-right:8px;}   /* 셀 좌우 여백 축소 */
.biz-table td.col-name{padding-left:6px; max-width:none;}                          /* ★ ellipsis 차단 — 사업명 풀텍스트 */
.biz-table td.col-name .t-main{font-size:.9rem; display:flex; align-items:flex-start; line-height:1.45;}
.biz-table td.col-name .nm-pins{flex:0 0 auto; white-space:nowrap;}                 /* ☆📍 고정 폭 — 이름 줄바꿈이 아이콘 영역 침범 안 함 */
.biz-table td.col-name .nm-text{flex:1 1 auto; min-width:0; white-space:normal; word-break:keep-all; overflow:visible; text-overflow:clip; line-height:1.45;}  /* 이름: 남은 폭에서만 줄바꿈(둘째 줄도 이름 시작선 정렬) */
.biz-table td.col-lp{max-width:none; font-size:.78rem; color:var(--ink-sub);}
.biz-table th.col-date,.biz-table td.col-date{font-size:.72rem; letter-spacing:-.02em;}
.biz-table .badge{min-width:3.7rem; font-size:.68rem; padding:2px 4px;}   /* 너비 통일(작게) */
.biz-table .biz-no{text-align:center; color:var(--ink-mute); font-variant-numeric:tabular-nums; font-size:.72rem;}
.star-btn{cursor:pointer; color:var(--ink-mute); margin-right:5px; font-size:.95em; line-height:1; user-select:none; transition:color .12s, transform .1s;}
.star-btn.is-on{color:#E8A400;}
.star-btn:hover{color:#E8A400; transform:scale(1.25);}
/* 📌 고정 핀 버튼 — 별표 옆 */
.pin-btn{cursor:pointer; opacity:.35; margin-right:5px; font-size:.85em; line-height:1; user-select:none; transition:opacity .12s, transform .1s; filter:grayscale(100%);}
.pin-btn.is-on{opacity:1; filter:none;}
.pin-btn:hover{opacity:1; filter:none; transform:scale(1.2);}
/* 🆕 NEW 배지 */
.new-badge{display:inline-block; background:var(--red); color:#fff; font-size:.625rem; font-weight:700; padding:1px 5px; border-radius:3px; margin-right:5px; vertical-align:middle; letter-spacing:.04em;}
/* 📌 핀된 사업 행 — 옅은 노란 배경으로 상단 고정 시각화 */
.biz-table tr.biz-row.is-pinned{background:#FFFCEF;}
.biz-table tr.biz-row.is-pinned:hover{background:#FFF6D8;}
.kind-tag{display:inline-block; font-size:.64rem; font-weight:700; padding:1px 5px; border-radius:3px; margin-right:5px; vertical-align:middle; white-space:nowrap;}
.kind-tag--done{background:#E3F0E6; color:#1D6F42;}
.kind-tag--plan{background:#FBEFD8; color:#8A5A00;}
.strat-tag{display:inline-block; font-size:.6rem; font-weight:700; padding:1px 5px; border-radius:3px; margin-left:6px; background:var(--navy-soft); color:#fff; vertical-align:middle;}
.rank__row--strat{background:#FAFBFD;}
.rank__row--strat .rank__no{color:var(--ink-mute);}
.drill-secs{display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:var(--s4); padding-bottom:var(--s4); border-bottom:.5px solid var(--line);}
.drill-secs__lab{font-family:var(--font-en); font-size:var(--fs-label); letter-spacing:.08em; color:var(--ink-sub); font-weight:600;}
.drill-secs .chips{display:flex; flex-wrap:wrap; gap:6px;}

/* 접수 마감/결성기한 — 고정 정렬 표 + D-day·날짜 묶음 박스 */
.dl-table{width:100%; table-layout:fixed; border-collapse:collapse;}
.dl-table col.dc-dd{width:5rem;}
.dl-table col.dc-lp{width:10rem;}
.dl-table col.dc-sec{width:18rem;}
.dl-table col.dc-amt{width:6rem;}
.dl-table td{padding:9px 8px; border-bottom:.5px solid var(--line); vertical-align:middle; overflow:hidden;}
.dl-table .dbox-cell{text-align:center;}
.dbox{display:inline-block; border-radius:7px; padding:5px 0; width:4rem; text-align:center;}
.dbox--r{background:var(--st-no-bg);}
.dbox--a{background:var(--st-open-bg);}
.dbox--n{background:var(--bg-2);}
.dbox__d{display:block; font-family:var(--font-en); font-size:.8125rem; font-weight:600; line-height:1.2; font-variant-numeric:tabular-nums;}
.dbox--r .dbox__d{color:var(--red);}
.dbox--a .dbox__d{color:var(--st-open-fg);}
.dbox--n .dbox__d{color:var(--ink-sub);}
.dbox__t{display:block; font-size:var(--fs-cap); color:var(--ink-mute); line-height:1.2; margin-top:1px; font-variant-numeric:tabular-nums;}
.dl-name{font-weight:500; white-space:nowrap; text-overflow:ellipsis;}
.dl-lp{color:var(--ink-sub); white-space:nowrap; text-overflow:ellipsis;}
.dl-secs{white-space:nowrap;}
.dl-secs .dl-more{font-size:var(--fs-label); color:var(--ink-mute); margin-left:2px;}
.dl-amt{text-align:right; font-variant-numeric:tabular-nums; font-weight:500;}

/* ════════ 모바일 UI 보정 v2 (2026-06-24 · 대표님 폰 열람 최적화) ════════ */
@media (max-width:600px){
  /* 1) 네비 탭 5개 잘림 방지 — 균등 축소 */
  .tabnav__in{overflow-x:hidden;}
  .tab{min-width:0; flex:1 1 0; font-size:.9rem; padding:13px 2px; letter-spacing:-.01em; font-weight:600;}

  /* (선정현황 .sel-table · 누적약정 .lp-rank 카드화는 mobile-fixes.css 가 담당 — 중복 제거) */

  /* 터치 타깃 키우기 + 모달 닫기 버튼 */
  .toolbar__filters .chip, .sec-chip, .trend-chip, .trk-seg button, .dlbtn, .sel-more, .sec-more{
    padding-top:9px; padding-bottom:9px; line-height:1.2;}
  .modal__x{width:40px; height:40px; line-height:40px; text-align:center; top:4px; right:4px; padding:0;}

  /* 카드화된 표의 헤더행 숨김 — mobile-fixes.css 가 thead를 안 숨겨 카드 위에 헤더가 떠서 보완 */
  .sel-table thead, .lp-rank thead, .dl-table thead{display:none !important;}
  /* lp-rank 순번(rk)은 카드에서 어색하게 떠 숨김(목록은 이미 약정순 정렬) */
  .lp-rank td.rk{display:none !important;}

  /* (자사강점 칩 배치는 mobile-fixes.css 가 2열로 담당 — 중복 제거) */

  /* 과소 보조글자 가독성 ↑ */
  .rank__sub{font-size:.7rem;}
  .dl-table .dbox__t{font-size:.7rem;}
  .dl-table .dl-secs .chip{font-size:.72rem;}
}

/* ── 선정현황 02 그래프(운용사 인사이트·분야 경쟁 강도) — 막대 확대·빈칸 축소·건수/금액 컬럼 정렬 (데스크톱) ── */
@media (min-width:641px){
  /* 운용사 인사이트: 회사명 안 잘리게 넓게(9.5rem) + 값(금액·횟수) 넓게(8rem) */
  #sec-gp .rank__row{ grid-template-columns:1.4rem 9.5rem 1fr 3.5rem; gap:10px; }
  #sec-gp .rank__label{ white-space:nowrap; overflow:visible; text-overflow:clip; }
  #sec-gp .rank__val{ justify-content:flex-end; align-items:baseline; gap:.4rem; white-space:nowrap; }
  #sec-gp .rank__cnt{ font-size:.8rem; color:var(--ink-mute); font-weight:400; }
  /* 막대(1fr) 대폭 확대: val 12.5rem→8.4rem. 건수/금액 고정폭 우정렬로 행마다 라인 일치 */
  #sec-sector .rank__row{ grid-template-columns:1.4rem 7rem 1fr 8.4rem; gap:10px; }
  #sec-sector .rank__val{ gap:.5rem; }
  #sec-sector .rs-cnt{ flex:0 0 2.6rem; text-align:right; color:var(--ink-sub); font-weight:500; font-variant-numeric:tabular-nums; white-space:nowrap; }
  #sec-sector .rs-amt{ flex:0 0 5rem; text-align:right; font-weight:600; font-variant-numeric:tabular-nums; white-space:nowrap; }
}
