@charset "utf-8";

/* =========================================================
   더인베스트(theinvest.co.kr) 공통 스타일 - common.css
   - 디자인 토큰(:root) / 리셋 / 기본 타이포 / 레이아웃 / 유틸리티
   - GNB·HERO·카드·랭킹·IPO 등 섹션 스타일은 단계별로 추가
   - 기준 폰트크기 16px / 들여쓰기 Tab
   ========================================================= */

:root{
	/* 잉크 / 배경 */
	--ink:#0A1733; --ink-2:#13224C; --ink-3:#1B2E5E;
	--surface:#F5F7FC; --card:#FFFFFF; --line:#E7EAF3; --line-2:#EEF1F8;
	--text:#0E1726; --muted:#5C6679; --muted-2:#8b94a8;

	/* 브랜드 (그린 — 로고 기준) */
	--brand:#2A6B5E; --brand-2:#16B89C; --brand-ink:#22564C;

	/* 등락 (한국장 관례: 상승=빨강, 하락=파랑) */
	--up:#F0413E; --down:#2E6BE8; --flat:#7b8499;

	/* 칩 */
	--chip:#E7F2EE; --chip-ink:#1F6B5C;

	/* 폰트 */
	--sans:'Pretendard','Pretendard Variable',-apple-system,'Apple SD Gothic Neo','Malgun Gothic','Noto Sans KR',sans-serif;
	--mono:'JetBrains Mono',ui-monospace,'SFMono-Regular',Consolas,'Liberation Mono',monospace;

	/* 레이아웃 / 형태 */
	--wrap:1200px;
	--r:16px; --r-sm:11px;
	--sh:0 1px 2px rgba(16,23,38,.04),0 8px 24px rgba(16,23,38,.06);
	--sh-hover:0 2px 6px rgba(16,23,38,.06),0 18px 40px rgba(20,40,90,.12);
}

/* ---------- 리셋 ---------- */
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
html{font-size:16px;}              /* 기준 폰트크기 16px */
img,svg{vertical-align:middle;}
button,input{font-family:inherit;}

body{
	font-family:var(--sans);
	font-size:1rem;                /* = 16px */
	color:var(--text);
	background:var(--surface);
	-webkit-font-smoothing:antialiased;
	line-height:1.5;
	letter-spacing:-0.01em;
	overflow-x:hidden;
}
a{color:inherit;text-decoration:none;}

/* ---------- 레이아웃 ---------- */
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px;}

/* ---------- 유틸리티 ---------- */
.num{font-family:var(--mono);font-feature-settings:"tnum" 1;letter-spacing:0;}
.up{color:var(--up);}
.down{color:var(--down);}
.flat{color:var(--flat);}

/* =========================================================
   상단 GNB (라이트 헤더 + 로고 + 검색폼 + 로그인)
   - 로고(logo02.png)가 다크 텍스트라 헤더를 라이트(흰 배경)로 운용
   ========================================================= */
.gnb{position:sticky;top:0;z-index:100;background:#fff;border-bottom:1px solid var(--line);}
.gnb__in{display:flex;align-items:center;gap:18px;height:64px;}

/* 브랜드 (워드마크 이미지 로고) */
.brand{display:flex;align-items:center;flex:0 0 auto;}
.brand__img{height:34px;width:auto;display:block;}

/* 검색폼 (라이트 배경 → 테두리 + 포커스 링) */
.gsearch{position:relative;flex:1 1 auto;min-width:0;max-width:560px;}
.gsearch__box{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:5px 5px 5px 16px;transition:border-color .15s,box-shadow .15s;}
.gsearch__box:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px rgba(42,107,94,.14);}
.gsearch__ico{color:var(--muted-2);flex:0 0 auto;}
.gsearch__in{flex:1;min-width:0;border:0;outline:0;font-family:var(--sans);font-size:15px;color:var(--text);background:transparent;padding:9px 0;}
.gsearch__in::placeholder{color:#9aa3b5;}
.gsearch__btn{flex:0 0 auto;width:38px;height:38px;padding:0;border:0;border-radius:9px;color:#fff;cursor:pointer;background:var(--brand);display:inline-flex;align-items:center;justify-content:center;transition:filter .15s;}
.gsearch__btn:hover{filter:brightness(1.08);}

/* 우측 유틸 (로그인) */
.gnb__utils{display:flex;align-items:center;gap:8px;margin-left:auto;flex:0 0 auto;}
.login{height:38px;padding:0 14px;display:inline-flex;align-items:center;gap:6px;border-radius:9px;font-weight:700;font-size:13.5px;color:var(--brand-ink);background:var(--chip);transition:background .15s;}
.login__ico{flex:0 0 auto;}
.login:hover{background:#dcece6;}

/* 자동완성 드롭다운 */
.ac{position:absolute;left:0;right:0;top:calc(100% + 8px);background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--sh-hover);overflow-x:hidden;overflow-y:auto;max-height:60vh;z-index:120;padding:4px 0;}
.ac[hidden]{display:none;}
.ac__head{padding:8px 14px 5px;font-size:11.5px;font-weight:700;color:var(--muted-2);letter-spacing:.02em;}
.ac__item{display:flex;align-items:center;gap:10px;padding:9px 14px;cursor:pointer;color:var(--text);}
.ac__item:hover,.ac__item.is-active{background:var(--surface);}
.ac__main{display:flex;align-items:center;gap:8px;min-width:0;flex:1;}
.ac__name{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ac__name b{color:var(--brand-ink);font-weight:800;}
.ac__code{font-size:11.5px;color:var(--muted-2);flex:0 0 auto;}
.ac__meta{display:flex;align-items:center;gap:6px;flex:0 0 auto;margin-left:auto;}
.ac__mkt{font-size:10.5px;font-weight:700;color:var(--brand-ink);background:var(--chip);border-radius:6px;padding:2px 7px;white-space:nowrap;}
.ac__halt{font-size:10.5px;font-weight:700;color:#b4232a;background:#fdeceb;border-radius:6px;padding:2px 7px;white-space:nowrap;}

/* GNB 반응형: 좁은 화면에서 검색폼을 아래 줄 전체폭으로 */
@media (max-width:760px){
	.gnb__in{flex-wrap:wrap;height:auto;padding-top:14px;padding-bottom:12px;gap:12px;}
	.brand{order:1;}
	.brand__img{height:30px;}
	.gnb__utils{order:2;margin-left:auto;}
	.gsearch{order:3;flex:1 1 100%;min-width:0;max-width:none;}
}

/* =========================================================
   HERO (다크 배경 + 데이터 아트 + 카피 + 통계)
   ========================================================= */
.hero{position:relative;background:var(--ink);overflow:hidden;}
.hero__art{position:absolute;inset:0;width:100%;height:100%;z-index:0;display:block;}
.hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
	background:linear-gradient(105deg, rgba(8,18,42,.92) 0%, rgba(8,18,42,.66) 45%, rgba(8,18,42,.28) 80%, rgba(8,18,42,.42) 100%);}
.hero__in{position:relative;z-index:2;padding:64px 0 72px;}
.hero__eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:600;color:#cfe9e2;
	background:rgba(42,107,94,.22);border:1px solid rgba(127,184,168,.32);padding:7px 13px;border-radius:999px;}
.hero__eyebrow .dot{width:7px;height:7px;border-radius:50%;background:var(--brand-2);box-shadow:0 0 0 4px rgba(22,184,156,.18);}
.hero__title{color:#fff;font-weight:800;letter-spacing:-.035em;font-size:clamp(32px,4.4vw,54px);line-height:1.08;margin:22px 0 0;}
.hero__title .grad{background:linear-gradient(92deg,#5fd3bb,#16B89C);-webkit-background-clip:text;background-clip:text;color:transparent;}
.hero__sub{color:#aebfca;font-size:clamp(15px,1.4vw,18px);max-width:600px;margin:18px 0 0;line-height:1.6;}
.stats{display:flex;flex-wrap:wrap;gap:36px;margin:44px 0 0;}
.stat__v{font-family:var(--mono);font-weight:700;font-size:30px;color:#fff;letter-spacing:-.01em;line-height:1;}
.stat__v small{font-family:var(--sans);font-size:15px;font-weight:600;color:#9fc7bd;margin-left:4px;letter-spacing:-.01em;}
.stat__l{margin-top:9px;font-size:13px;color:#8fa6ae;}
.stat__sep{width:1px;align-self:stretch;background:rgba(255,255,255,.1);}
@media (max-width:1024px){ .stats{gap:24px;} .stat__sep{display:none;} }
@media (max-width:640px){ .hero__in{padding:24px 0 28px;} }

/* =========================================================
   공통 섹션 헤더 (여러 섹션에서 재사용)
   ========================================================= */
.sec__head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:22px;flex-wrap:wrap;}
.sec__title{font-size:31px;font-weight:800;letter-spacing:-.02em;margin:0;color:var(--text);}
.sec__sub{margin:6px 0 0;font-size:13px;color:var(--muted);}
.sec__stamp{font-size:12px;color:var(--muted-2);font-family:var(--mono);white-space:nowrap;}

/* =========================================================
   최근 업데이트 (7개 카테고리 카드)
   ========================================================= */
.recent{padding:56px 0;}
.rc__grid{display:flex;flex-wrap:wrap;gap:16px;}
.rc__card{flex:1 1 300px;min-width:0;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px 18px 8px;box-shadow:var(--sh);}
.rc__cardhead{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:12px;border-bottom:1px solid var(--line-2);}
.rc__cat{font-size:17px;font-weight:800;color:var(--text);}
.rc__new{font-size:10.5px;font-weight:800;color:#fff;background:var(--brand);border-radius:999px;padding:3px 9px;letter-spacing:.02em;white-space:nowrap;}
.rc__list{list-style:none;margin:0;padding:6px 0 0;}
.rc__item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--line-2);}
.rc__item:first-child{border-top:0;}
.rc__corp{display:flex;flex-direction:column;gap:2px;min-width:0;}
.rc__name{font-size:16px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rc__corp:hover .rc__name{color:var(--brand-ink);}
.rc__sub{font-size:11px;color:var(--muted-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rc__right{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex:0 0 auto;min-width:0;max-width:62%;text-align:right;}
.rc__val{font-size:16px;font-weight:700;color:var(--text);white-space:normal;word-break:keep-all;line-height:1.35;}
.rc__val.is-up{color:var(--up);}
.rc__val.is-down{color:var(--down);}
.rc__date{font-size:10.5px;color:var(--muted-2);}
.rc__empty{padding:14px 0;color:var(--muted-2);font-size:13px;text-align:center;}
.rc__loading{color:var(--muted-2);font-size:14px;padding:22px 0;}

/* =========================================================
   카테고리별 랭킹 (탭 + 4카드 × 상위 5)
   ========================================================= */
.ranking{padding:56px 0;}
.rk__tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:18px;flex-wrap:wrap;}
.rk__tab{-webkit-appearance:none;appearance:none;border:0;background:transparent;font-family:var(--sans);font-size:15px;font-weight:700;color:var(--muted);padding:10px 16px;cursor:pointer;position:relative;border-radius:8px 8px 0 0;touch-action:manipulation;-webkit-tap-highlight-color:rgba(0,0,0,.06);}
@media (hover:hover){ .rk__tab:hover{color:var(--text);background:var(--surface);} }
.rk__tab.is-on{color:var(--brand-ink);}
.rk__tab.is-on::after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:2px;background:var(--brand);border-radius:2px;}
.rk__panel[hidden]{display:none;}
.rk__grid{display:flex;flex-wrap:wrap;gap:16px;}
.rk__card{flex:1 1 260px;min-width:0;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px;box-shadow:var(--sh);}
.rk__cardhead{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding-bottom:10px;margin-bottom:4px;border-bottom:1px solid var(--line-2);}
.rk__title{font-size:17px;font-weight:800;color:var(--text);}
.rk__unit{font-size:12px;color:var(--muted-2);white-space:nowrap;}
.rk__list{list-style:none;margin:0;padding:4px 0 0;}
.rk__row{display:flex;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--line-2);}
.rk__row:first-child{border-top:0;}
.rk__rank{flex:0 0 22px;width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;font-family:var(--mono);font-size:12px;font-weight:700;color:var(--muted);background:var(--surface);}
.rk__rank.r1{color:#fff;background:var(--brand);}
.rk__rank.r2,.rk__rank.r3{color:var(--brand-ink);background:var(--chip);}
.rk__corp{flex:1;min-width:0;font-size:16px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.rk__corp:hover{color:var(--brand-ink);}
.rk__val{flex:0 0 auto;font-size:16px;font-weight:700;color:var(--text);}
.rk__val.is-up{color:var(--up);}
.rk__val.is-down{color:var(--down);}
.rk__empty{padding:12px 0;color:var(--muted-2);font-size:13px;text-align:center;}

/* =========================================================
   IPO 캘린더 (달력 + 공모예정 + 최근상장)
   ========================================================= */
.ipo{padding:56px 0;}
.ipo__grid{display:block;}
.ipo__cal{width:100%;margin-bottom:20px;}
.ipo__lists{display:flex;flex-wrap:wrap;gap:20px;align-items:stretch;}

/* 달력 */
.ipocal{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:18px;}
.ipocal__nav{display:flex;align-items:center;justify-content:center;gap:16px;margin-bottom:12px;}
.ipocal__label{font-size:16px;font-weight:800;color:var(--text);min-width:120px;text-align:center;}
.ipocal__navbtn{width:30px;height:30px;border:1px solid var(--line);background:#fff;border-radius:8px;cursor:pointer;color:var(--muted);font-size:17px;line-height:1;display:inline-flex;align-items:center;justify-content:center;touch-action:manipulation;}
@media (hover:hover){ .ipocal__navbtn:hover{background:var(--surface);color:var(--text);} }
.ipocal__navbtn:disabled{opacity:.4;cursor:default;}
.ipocal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;}
.ipocal__weekdays{margin-bottom:6px;}
.ipocal__wd{text-align:center;font-size:11.5px;font-weight:700;color:var(--muted-2);padding:4px 0;}
.ipocal__wd.sun{color:var(--up);}
.ipocal__wd.sat{color:var(--down);}
.ipocal__month[hidden]{display:none;}
.ipocal__cell{min-height:52px;border-radius:9px;padding:5px 3px;display:flex;flex-direction:column;align-items:center;gap:3px;}
.ipocal__cell.has-ev{background:var(--surface);}
.ipocal__cell.is-today{outline:2px solid var(--brand);outline-offset:-2px;}
.ipocal__day{font-family:var(--mono);font-size:12.5px;font-weight:600;color:var(--text);}
.ipocal__day.sun{color:var(--up);}
.ipocal__day.sat{color:var(--down);}
.ipocal__dots{display:flex;flex-wrap:wrap;gap:3px;justify-content:center;}
.ipocal__dot{width:6px;height:6px;border-radius:50%;}
.ipocal__dot.t-dem{background:#E0A100;}
.ipocal__dot.t-sub{background:var(--brand);}
.ipocal__dot.t-list{background:#7A5AF8;}
.ipocal__legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line-2);}
.ipocal__leg{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--muted);}
.ipocal__leg i{width:8px;height:8px;border-radius:50%;display:inline-block;}

/* 공모예정 / 최근상장 */
.ipodeals{flex:1 1 300px;min-width:0;display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);padding:18px;}
.ipodeals__sub{font-size:13px;font-weight:800;color:var(--muted);margin:0 0 6px;letter-spacing:.02em;}
.ipodeals__list{list-style:none;margin:0;padding:0;}
.ipodeals__empty{font-size:13px;color:var(--muted-2);padding:8px 0;}
@media (min-width:640px){ .ipodeals__list{height:300px;overflow-y:auto;} }
.deal{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line-2);}
.deal:first-child{border-top:0;}
.deal__state{flex:0 0 auto;font-size:11px;font-weight:800;padding:3px 8px;border-radius:6px;white-space:nowrap;}
.deal__state.tone-live{background:var(--brand);color:#fff;}
.deal__state.tone-soon{background:#FFF3D6;color:#96690A;}
.deal__state.tone-list{background:var(--chip);color:var(--brand-ink);}
.deal__state.tone-done{background:var(--surface);color:var(--muted);}
.deal__body{flex:1;min-width:0;}
.deal__top{display:flex;align-items:center;gap:6px;min-width:0;}
.deal__corp{font-size:15px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
a.deal__corp:hover{color:var(--brand-ink);}
.deal__ind{flex:0 0 auto;font-size:11px;color:var(--muted-2);background:var(--surface);border-radius:5px;padding:1px 6px;}
.deal__sch{font-size:11.5px;color:var(--muted-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px;}
.deal__val{flex:0 0 auto;text-align:right;display:flex;flex-direction:column;gap:1px;}
.deal__price{font-family:var(--mono);font-size:14px;font-weight:700;color:var(--text);}
.deal__ret{font-family:var(--mono);font-size:14px;font-weight:700;color:var(--text);}
.deal__ret.is-up{color:var(--up);}
.deal__ret.is-down{color:var(--down);}
.deal__psub{font-size:10.5px;color:var(--muted-2);}
@media (max-width:520px){ .ipocal__cell{min-height:44px;} }

/* =========================================================
   푸터 (다크 — HERO 계열)
   ========================================================= */
.site-foot{background:var(--ink);color:#9fb0c4;padding:44px 0 40px;font-size:13px;line-height:1.65;}
.site-foot a{color:#c3d0e0;transition:color .15s;}
.site-foot a:hover{color:#fff;}
.foot__top{display:flex;flex-wrap:wrap;gap:24px 40px;justify-content:space-between;align-items:flex-start;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.09);}
.foot__brand{min-width:0;}
.foot__logo{display:inline-block;font-size:20px;font-weight:800;color:#fff;letter-spacing:-.02em;}
.foot__logo:hover{color:#fff;}
.foot__tag{margin:9px 0 0;font-size:12.5px;color:#7e8ea6;max-width:440px;line-height:1.55;}
.foot__nav{display:flex;flex-wrap:wrap;gap:9px 18px;align-items:center;}
.foot__nav a{font-size:13px;}
.foot__nav a.is-strong{color:#8fd7c8;font-weight:700;}
.foot__nav a.is-strong:hover{color:#b6efe0;}
.foot__src{margin:20px 0 0;padding:13px 16px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.07);border-radius:12px;font-size:12.5px;color:#9fb0c4;line-height:1.6;}
.foot__src b{color:#cdd8e6;font-weight:700;}
.foot__legal{margin:20px 0 0;font-size:12px;color:#7e8ea6;line-height:1.75;}
.foot__disc{margin:0 0 12px;color:#93a3ba;}
.foot__info{margin:0;color:#7e8ea6;}
.foot__open{margin:12px 0 0;padding-top:12px;border-top:1px solid rgba(255,255,255,.07);color:#6f7f97;}
.foot__open b{color:#9fb0c4;font-weight:700;}
.foot__copy{margin:10px 0 0;color:#6f7f97;font-family:var(--mono);font-size:11.5px;}
@media (max-width:640px){
	.site-foot{padding:32px 0 32px;}
	.foot__top{gap:18px;}
}

/* =========================================================
   종목 상세 (compinfo)
   ========================================================= */
.cmp .muted{color:var(--muted-2);}
.cmp-up{color:var(--up);font-weight:700;}
.cmp-down{color:var(--down);font-weight:700;}

/* 헤더 (코드·종목명·로고·시세·기업개요) */
.cmp-head{background:#fff;border-bottom:1px solid var(--line);}
.cmp-head .wrap{padding-top:26px;padding-bottom:24px;}
.cmp-head__row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;}
.cmp-head__id{display:flex;align-items:center;gap:10px;min-width:0;}
.cmp-head__mkt{flex:0 0 auto;font-size:12px;font-weight:700;color:var(--brand-ink);background:var(--chip);border-radius:6px;padding:3px 9px;}
.cmp-head__code{font-size:14px;color:var(--muted);}
.cmp-head__logo{flex:0 0 auto;width:46px;height:46px;border-radius:50%;border:1px solid var(--line);object-fit:contain;background:#fff;}
.cmp-head__name{font-size:26px;font-weight:800;letter-spacing:-.02em;margin:10px 0 0;color:var(--text);}
.cmp-head__pricewrap{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px 14px;margin:12px 0 0;}
.cmp-head__price{font-family:var(--mono);font-size:34px;font-weight:800;line-height:1;letter-spacing:-.01em;}
.cmp-head__won{font-size:20px;font-weight:700;margin-left:2px;}
.cmp-head__chg{font-family:var(--mono);font-size:15px;font-weight:700;}
.cmp-head__price.is-up,.cmp-head__chg.is-up{color:var(--up);}
.cmp-head__price.is-down,.cmp-head__chg.is-down{color:var(--down);}
.cmp-head__price.is-flat,.cmp-head__chg.is-flat{color:var(--flat);}
.cmp-head__time{font-size:13px;color:var(--muted-2);font-family:var(--mono);}
.cmp-head__summary{margin:14px 0 0;font-size:16px;color:var(--muted);line-height:1.6;}
.cmp-head__meta{display:flex;flex-wrap:wrap;gap:8px 20px;margin:10px 0 0;font-size:13px;color:var(--muted-2);}
.cmp-head__meta b{color:var(--text);font-weight:700;font-family:var(--mono);}

/* 본문 섹션 공통 */
.cmp__body{padding:28px 0 56px;}
.cmp-sec{margin:0 0 26px;}
.cmp-sec:last-child{margin-bottom:0;}
.cmp-sec__title{font-size:18px;font-weight:800;color:var(--text);margin:0 0 12px;padding-left:11px;border-left:3px solid var(--brand);line-height:1.2;}

/* key-value 카드 */
.cmp-kv{margin:0;background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);overflow:hidden;}
.cmp-kv__row{display:flex;border-top:1px solid var(--line-2);}
.cmp-kv__row:first-child{border-top:0;}
.cmp-kv__row dt{flex:0 0 32%;max-width:200px;padding:13px 16px;background:var(--surface);font-size:14px;font-weight:700;color:var(--muted);}
.cmp-kv__row dd{flex:1;min-width:0;margin:0;padding:13px 16px;font-size:16px;color:var(--text);line-height:1.55;}
.cmp-kv__sub{display:block;margin-top:3px;font-size:13px;color:var(--muted-2);}
.cmp-kv__pay{display:flex;flex-wrap:wrap;gap:6px 14px;}
@media (max-width:560px){
	.cmp-head__price{font-size:28px;}
	.cmp-kv__row dt{flex-basis:38%;}
}

/* §2 핵심 재무 지표 */
.cmp-metrics__meta{font-size:13px;color:var(--muted-2);margin:0 0 14px;font-family:var(--mono);}
.cmp-metrics__meta b{color:var(--muted);font-weight:700;}
.cmp-metrics{display:flex;flex-direction:column;gap:14px;}
.cmp-mgroup{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);overflow:hidden;}
.cmp-mgroup__title{font-size:14px;font-weight:800;color:var(--brand-ink);background:var(--chip);padding:10px 16px;border-bottom:1px solid var(--line);}
.cmp-mgroup__grid{display:flex;flex-wrap:wrap;gap:1px;background:var(--line-2);}
.cmp-metric{flex:1 1 150px;display:flex;flex-direction:column;gap:3px;padding:12px 15px;background:var(--card);}
.cmp-metric__label{font-size:13px;color:var(--muted);}
.cmp-metric__val{font-family:var(--mono);font-size:16px;font-weight:700;color:var(--text);letter-spacing:-.01em;}
.cmp-metric__val.is-up{color:var(--up);}
.cmp-metric__val.is-down{color:var(--down);}
.cmp-metric__sub{font-size:11.5px;color:var(--muted-2);}
.cmp-metrics__note{margin:16px 0 0;font-size:12px;color:var(--muted-2);line-height:1.7;}
.cmp-metrics__note code{font-family:var(--mono);background:var(--surface);padding:0 4px;border-radius:4px;}

/* §3 재무 표 */
.cmp-fintabs{display:flex;flex-direction:column;gap:20px;}
.cmp-fin__cap{font-size:15px;font-weight:800;color:var(--brand-ink);margin:0 0 8px;}
.cmp-fin__unit{font-size:12px;font-weight:500;color:var(--muted-2);}
.cmp-fin__scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh);}
.cmp-fintable{width:100%;border-collapse:collapse;background:var(--card);font-size:16px;min-width:520px;}
.cmp-fintable thead th{background:var(--surface);font-size:13px;font-weight:700;color:var(--muted);text-align:right;padding:10px 12px;white-space:nowrap;border-bottom:1px solid var(--line);}
.cmp-fintable thead th:first-child{text-align:left;}
.cmp-fintable tbody th{text-align:left;font-weight:700;color:var(--text);font-size:15px;padding:10px 12px;white-space:nowrap;border-bottom:1px solid var(--line-2);}
.cmp-fintable tbody td{text-align:right;font-family:var(--mono);color:var(--text);padding:10px 12px;white-space:nowrap;border-bottom:1px solid var(--line-2);}
.cmp-fintable tbody tr:last-child th,.cmp-fintable tbody tr:last-child td{border-bottom:0;}
.cmp-fintable tbody td.is-up{color:var(--up);}
.cmp-fintable tbody td.is-down{color:var(--down);}

/* §4 업종 랭킹 */
.cmp-rank__cap{font-size:16px;font-weight:800;color:var(--text);margin:0 0 10px;}
.cmp-rank__total{font-size:13px;font-weight:600;color:var(--muted);}
.cmp-ranktable tbody td b{font-size:17px;color:var(--brand-ink);}
.cmp-ranktable tbody td.cmp-rank__val{font-weight:800;color:var(--text);}
.cmp-ranktable .cmp-rank__den{font-size:13px;color:var(--muted-2);font-family:var(--mono);}
.cmp-rank__none{font-size:15px;color:var(--muted);background:var(--surface);border:1px dashed var(--line-2);border-radius:var(--r);padding:14px 16px;margin:0 0 12px;}

/* §1 조직정보 - 임원 */
.cmp-org__cap{font-size:15px;font-weight:800;color:var(--brand-ink);margin:0 0 10px;}
.cmp-execs{display:flex;flex-wrap:wrap;gap:10px;}
.cmp-exec{flex:1 1 280px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;box-shadow:var(--sh);}
.cmp-exec__top{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;}
.cmp-exec__name{font-size:16px;font-weight:800;color:var(--text);}
.cmp-exec__en{font-size:12px;color:var(--muted-2);}
.cmp-exec__pos{font-size:13px;font-weight:700;color:var(--brand-ink);}
.cmp-exec__chip{font-size:11px;font-weight:700;color:var(--muted);background:var(--surface);border:1px solid var(--line-2);border-radius:10px;padding:1px 7px;}
.cmp-exec__meta{font-size:12.5px;color:var(--muted);margin-top:5px;line-height:1.5;}
.cmp-exec__career{font-size:13px;color:var(--text);margin-top:6px;line-height:1.55;}
.cmp-exec__more{margin-top:8px;}
.cmp-exec__more>summary{font-size:12.5px;color:var(--brand);cursor:pointer;font-weight:700;list-style:none;}
.cmp-exec__more>summary::-webkit-details-marker{display:none;}
.cmp-exec__more>summary::before{content:'▸ ';}
.cmp-exec__more[open]>summary::before{content:'▾ ';}
.cmp-exec__more-body{padding:6px 0 2px;}
.cmp-exec__sub{font-size:12px;font-weight:800;color:var(--muted);margin:6px 0 3px;}
.cmp-exec__list{margin:0;padding-left:16px;font-size:13px;color:var(--text);line-height:1.6;}
.cmp-org__toggle{margin-top:12px;}
.cmp-org__toggle>summary{font-size:14px;font-weight:700;color:var(--brand);cursor:pointer;padding:8px 0;}
.cmp-execs--more{margin-top:10px;}
@media (max-width:520px){ .cmp-exec{flex-basis:100%;} }

/* §1 직원현황 */
.cmp-org__cap--emp{margin-top:22px;}
.cmp-empsum{display:flex;flex-wrap:wrap;gap:1px;background:var(--line-2);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;margin-bottom:14px;}
.cmp-empsum__item{flex:1 1 150px;display:flex;flex-direction:column;gap:3px;padding:12px 15px;background:var(--card);}
.cmp-empsum__lb{font-size:12px;color:var(--muted);font-weight:600;}
.cmp-empsum__v{font-size:16px;font-weight:800;color:var(--text);}
.cmp-empsum__u{font-size:12px;font-weight:600;color:var(--muted-2);margin-left:2px;}
.cmp-empsum__sub{font-size:11.5px;color:var(--muted-2);}
@media (max-width:520px){ .cmp-empsum__item{flex-basis:calc(50% - 1px);} }

/* §1 보수현황 - 전년대비 배지 */
.cmp-badge{display:inline-block;font-size:11.5px;font-weight:800;line-height:1.4;padding:1px 7px;border-radius:10px;margin-top:2px;white-space:nowrap;}
.cmp-badge--up{color:var(--up);background:rgba(220,38,38,.08);}
.cmp-badge--down{color:var(--down);background:rgba(37,99,235,.08);}
.cmp-badge--flat{color:var(--muted-2);background:var(--surface);}
.cmp-badge--new{color:#fff;background:var(--brand);}
.cmp-comptable tbody td .cmp-badge{margin-top:0;}
.cmp-comptable tbody td:last-child,.cmp-comptable thead th:last-child{text-align:right;}
.cmp-comp__subcap{font-size:13.5px;font-weight:800;color:var(--brand-ink);margin:14px 0 6px;}
.cmp-comptable td.cmp-comp__pos{text-align:left;font-family:inherit;color:var(--muted);}

/* §1 주주현황 */
.cmp-sh__total{font-size:15px;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:10px 14px;margin-bottom:12px;}
.cmp-sh__total b{font-size:17px;color:var(--brand-ink);margin-left:4px;}
.cmp-shtable td.cmp-sh__rel{text-align:left;font-family:inherit;color:var(--muted);}

/* §5 증권사 의견 */
.cmp-brokertable td.cmp-broker__date{color:var(--muted-2);font-size:13px;}
.cmp-op{display:inline-block;font-weight:800;font-size:14px;padding:1px 8px;border-radius:10px;}
.cmp-op--buy{color:var(--up);background:rgba(220,38,38,.08);}
.cmp-op--sell{color:var(--down);background:rgba(37,99,235,.08);}
.cmp-op--hold{color:var(--muted);background:var(--surface);}
.cmp-brokerstat{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:12px 16px;margin-bottom:12px;}
.cmp-brokerstat__lb{font-size:12px;color:var(--muted);font-weight:700;margin-bottom:3px;}
.cmp-brokerstat__n{font-weight:600;color:var(--muted-2);}
.cmp-brokerstat__range{font-size:16px;font-weight:800;color:var(--text);font-family:var(--mono);display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;}
.cmp-brokerstat__avg{color:var(--brand-ink);}
.cmp-brokerstat__sep{color:var(--muted-2);font-weight:600;}
.cmp-brokerstat__dist{display:flex;gap:6px;flex-wrap:wrap;}

/* §6 카테고리별 정보 (세로 나열) */
.cmp-catlist{display:flex;flex-direction:column;gap:16px;}
.cmp-catblk__name{font-size:15px;font-weight:800;color:var(--brand-ink);margin-bottom:8px;padding-bottom:6px;border-bottom:2px solid var(--line);}
.cmp-evs{display:flex;flex-direction:column;gap:8px;}
.cmp-evs .cmp-ev{margin-bottom:0;}
.cmp-evs--grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;align-items:stretch;}
.cmp-evs--grid .cmp-ev:last-child:nth-child(odd){grid-column:1 / -1;}
@media (max-width:640px){ .cmp-evs--grid{grid-template-columns:1fr;} .cmp-evs--grid .cmp-ev:last-child:nth-child(odd){grid-column:auto;} }
.cmp-ev{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:12px 14px;box-shadow:var(--sh);margin-bottom:8px;}
.cmp-ev:last-child{margin-bottom:0;}
.cmp-ev__head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px;}
.cmp-ev__title{font-size:16px;font-weight:800;color:var(--text);}
.cmp-ev__date{font-size:12px;color:var(--muted-2);font-family:var(--mono);white-space:nowrap;}
.cmp-ev__fields{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;margin:0;}
.cmp-ev__f{display:flex;align-items:baseline;gap:10px;}
.cmp-ev__f--wide{grid-column:1 / -1;}
.cmp-ev__lb{font-size:13px;color:var(--muted);font-weight:600;flex:0 0 auto;min-width:76px;margin:0;}
.cmp-ev__v{font-size:16px;color:var(--text);font-weight:700;margin:0;flex:1 1 auto;min-width:0;overflow-wrap:anywhere;word-break:break-word;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;line-clamp:4;overflow:hidden;}
.cmp-ev__v.is-up{color:var(--up);}
.cmp-ev__v.is-down{color:var(--down);}
@media (max-width:480px){ .cmp-ev__fields{grid-template-columns:1fr;} }
.cmp-ev--simple{display:flex;align-items:baseline;gap:10px;}
.cmp-ev--simple .cmp-ev__title{flex:1 1 auto;font-weight:600;}
.cmp-ev__sv{font-size:16px;font-weight:800;color:var(--text);font-family:var(--mono);white-space:nowrap;}
.cmp-ev__sv.is-up{color:var(--up);}
.cmp-ev__sv.is-down{color:var(--down);}
@media (max-width:520px){
	.cmp-metric{flex-basis:calc(50% - 1px);}
}

/* ---------- 반응형 공통 ---------- */
@media (max-width:640px){
	.wrap{padding-left:16px;padding-right:16px;}   /* 상/하 패딩은 컴포넌트값 유지(gnb__in·hero__in 덮어쓰기 방지) */
}
@media (prefers-reduced-motion:reduce){
	*{animation:none !important;transition:none !important;}
}

/* ── catlist(소분류 전체 리스트) 페이지 ── */
.clp .wrap{max-width:1100px;margin:0 auto;padding:20px 16px 40px;}
.clp-head{margin-bottom:14px;}
.clp-back{display:inline-block;font-size:14px;color:var(--muted);text-decoration:none;margin-bottom:8px;}
.clp-back:hover{color:var(--brand-ink);text-decoration:underline;}
.clp-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin:0 0 6px;font-size:22px;line-height:1.3;}
.clp-name{font-weight:800;color:var(--brand-ink);}
.clp-code{font-size:15px;color:var(--muted);font-weight:600;}
.clp-label{font-size:17px;font-weight:700;color:var(--ink);}
.clp-meta{font-size:14px;color:var(--muted);}
.clp-empty{padding:40px 0;text-align:center;font-size:16px;color:var(--muted);}
.clp-empty a{color:var(--brand-ink);}
.clp-evs{margin-top:12px;}
.clp-headr{display:inline-flex;align-items:center;gap:8px;flex:none;}
.clp-dart{display:inline-block;font-size:12px;line-height:1;padding:4px 8px;border:1px solid var(--line);border-radius:6px;color:var(--muted);text-decoration:none;white-space:nowrap;}
.clp-dart:hover{color:var(--brand-ink);border-color:var(--brand-ink);}
/* 페이저 */
.clp-pager{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:20px;}
.clp-pg{min-width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;border:1px solid var(--line);border-radius:8px;font-size:14px;color:var(--ink);text-decoration:none;background:#fff;}
.clp-pg:hover{border-color:var(--brand-ink);color:var(--brand-ink);}
.clp-pg.is-cur{background:var(--brand-ink);border-color:var(--brand-ink);color:#fff;font-weight:700;cursor:default;}
.clp-pg--nav{color:var(--muted);}
/* compinfo §6 카드 제목 → 전체 리스트 링크 */
.cmp-ev__title a{color:inherit;text-decoration:none;}
.cmp-ev__title a:hover{color:var(--brand-ink);text-decoration:underline;}
/* catlist 대분류/소분류 select */
.clp-selwrap{display:flex;flex-wrap:wrap;gap:10px;margin:2px 0 8px;}
.clp-selbox{display:inline-flex;align-items:center;gap:6px;}
.clp-sellb{font-size:13px;color:var(--muted);white-space:nowrap;}
.clp-sel{height:36px;padding:0 30px 0 10px;font-size:15px;color:var(--ink);border:1px solid var(--line);border-radius:8px;background:#fff url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 10px center;-webkit-appearance:none;-moz-appearance:none;appearance:none;max-width:100%;}
.clp-sel:focus{outline:none;border-color:var(--brand-ink);}

/* ═══════════════════════════════════════════════════════════
   타이포그래피 통일 레이어 (2026-07)
   규칙: 큰제목 37/800 · 중제목1 30/800 · 중제목2 25/800 ·
         소제목 20/700 · 컨텐츠 16/500 · 라벨 13/400 · 주석 11.5/400
   글자크기 테마: html[data-fs="lg"] +12.5% · [data-fs="xl"] +25% (쿠키 ti_fs)
   ═══════════════════════════════════════════════════════════ */
:root{
	--t-h1:37px; --t-h2:30px; --t-h3:25px; --t-h4:20px;
	--t-body:16px; --t-label:13px; --t-note:11.5px;
	--w-h1:800; --w-h2:800; --w-h3:800; --w-h4:700; --w-body:500;
}
html[data-fs="lg"]{ --t-h1:42px; --t-h2:34px; --t-h3:28px; --t-h4:22px; --t-body:18px; --t-label:14.5px; --t-note:13px; }
html[data-fs="xl"]{ --t-h1:46px; --t-h2:38px; --t-h3:31px; --t-h4:25px; --t-body:20px; --t-label:16px; --t-note:14.5px; }

/* 제목 계층(#1·#6: 타이틀 brand-ink 통일) */
.cmp-head__name{font-size:var(--t-h1);font-weight:var(--w-h1);color:var(--brand-ink);}
.cmp-sec__title{font-size:var(--t-h2);font-weight:var(--w-h2);color:var(--brand-ink);border-left-width:4px;padding-left:13px;}
.cmp-org__cap,.cmp-fin__cap,.cmp-rank__cap,.cmp-comp__subcap{font-size:var(--t-h3);font-weight:var(--w-h3);color:var(--brand-ink);}
.cmp-catblk__name{font-size:var(--t-h4);font-weight:var(--w-h4);color:var(--brand-ink);border-bottom-width:1px;padding-bottom:8px;margin-bottom:12px;}
.cmp-org__cap .cmp-fin__unit,.cmp-fin__cap .cmp-fin__unit,.cmp-comp__subcap .cmp-fin__unit{font-size:var(--t-label);font-weight:400;}

/* 본문·라벨·주석 */
.cmp-fintable{font-size:var(--t-body);}
.cmp-fintable tbody th{font-size:var(--t-body);}
.cmp-fintable thead th{font-size:var(--t-label);font-weight:400;color:var(--muted);}
.cmp-metrics__note{font-size:var(--t-note);font-weight:400;}
.cmp-metrics__note br + *{}

/* #7 테이블 타이틀·셀 정합: 패딩·수직정렬 통일 */
.cmp-fintable thead th,.cmp-fintable tbody th,.cmp-fintable tbody td{padding:11px 12px;vertical-align:middle;line-height:1.45;}
.cmp-comptable thead th,.cmp-shtable thead th,.cmp-brokertable thead th{text-align:left;}
.cmp-comptable tbody td,.cmp-shtable tbody td,.cmp-brokertable tbody td{text-align:left;font-family:inherit;}
.cmp-comptable thead th:last-child,.cmp-comptable tbody td:last-child,
.cmp-shtable thead th:last-child,.cmp-shtable tbody td:last-child,
.cmp-brokertable thead th:last-child,.cmp-brokertable tbody td:last-child{text-align:right;}
.cmp-shtable thead th:nth-last-child(2),.cmp-shtable tbody td:nth-last-child(2){text-align:right;}

/* ── §6 카드 리디자인(#4·#8): 라벨 위 / 값 아래 스택형, 세련된 카드 ── */
.cmp-ev{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px 12px;transition:border-color .15s,box-shadow .15s;}
.cmp-ev:hover{border-color:var(--brand-ink);box-shadow:0 4px 14px rgba(34,86,76,.08);}
.cmp-ev__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:9px;margin-bottom:10px;border-bottom:1px solid var(--line-2);}
.cmp-ev__title{font-size:var(--t-body);font-weight:700;color:var(--brand-ink);line-height:1.35;min-width:0;}
.cmp-ev__title a{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:4px;}
.cmp-ev__title a::after{content:"›";font-size:1.05em;font-weight:700;color:var(--muted);transition:transform .15s,color .15s;}
.cmp-ev:hover .cmp-ev__title a{color:var(--brand);}
.cmp-ev:hover .cmp-ev__title a::after{color:var(--brand);transform:translateX(2px);}
.cmp-ev__meta{display:inline-flex;align-items:center;gap:6px;flex:none;}
.cmp-ev__src{display:inline-block;font-size:var(--t-note);font-weight:600;line-height:1;color:var(--brand-ink);background:rgba(34,86,76,.08);border-radius:999px;padding:4px 9px;white-space:nowrap;}
.cmp-ev__date{font-size:var(--t-label);color:var(--muted-2);font-family:var(--mono);white-space:nowrap;}
.cmp-ev__fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px 14px;margin:0;}
.cmp-ev__f{display:block;min-width:0;}
.cmp-ev__f--wide{grid-column:1 / -1;}
.cmp-ev__lb{display:block;font-size:var(--t-label);font-weight:400;color:var(--muted);margin:0 0 3px;line-height:1.3;}
.cmp-ev__v{display:block;font-size:var(--t-body);font-weight:600;color:var(--text);margin:0;line-height:1.4;overflow-wrap:anywhere;}
@media (max-width:640px){ .cmp-ev__fields{grid-template-columns:repeat(2,1fr);} .cmp-ev__f--wide{grid-column:1 / -1;} }

/* ── #5 더보기: 부모 하단 중앙 펼치기/접기 버튼 ── */
.cmp-moreblk{margin-top:6px;}
.cmp-moreblk__body{margin-bottom:10px;}
.cmp-morebtn{display:flex;align-items:center;justify-content:center;gap:7px;margin:10px auto 0;padding:9px 22px;font-size:var(--t-label);font-weight:600;color:var(--brand-ink);background:#fff;border:1px solid var(--line);border-radius:999px;cursor:pointer;transition:border-color .15s,background .15s;}
.cmp-morebtn:hover{border-color:var(--brand-ink);background:rgba(34,86,76,.04);}
.cmp-morebtn .t-close{display:none;}
.cmp-moreblk.is-open .cmp-morebtn .t-open{display:none;}
.cmp-moreblk.is-open .cmp-morebtn .t-close{display:inline;}
.cmp-morebtn__ic{width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .15s;}
.cmp-moreblk.is-open .cmp-morebtn__ic{transform:rotate(-135deg) translateY(-1px);}

/* ── 글자크기 테마 위젯 ── */
.cmp-fstheme{display:flex;align-items:center;gap:6px;justify-content:flex-end;max-width:1100px;margin:10px auto -6px;padding:0 16px;}
.cmp-fstheme__lb{font-size:12px;color:var(--muted);}
.cmp-fstheme button{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:8px;cursor:pointer;line-height:1;padding:0;width:30px;height:30px;font-weight:700;}
.cmp-fstheme button[data-fs=""]{font-size:13px;}
.cmp-fstheme button[data-fs="lg"]{font-size:16px;width:34px;height:34px;}
.cmp-fstheme button[data-fs="xl"]{font-size:19px;width:38px;height:38px;}
.cmp-fstheme button:hover{border-color:var(--brand-ink);color:var(--brand-ink);}
.cmp-fstheme button.is-on{background:var(--brand-ink);border-color:var(--brand-ink);color:#fff;}

/* catlist 페이지 제목/라벨도 스케일 연동 */
.clp-title{font-size:var(--t-h3);}
.clp-name{font-size:var(--t-h3);}
.clp-label{font-size:var(--t-h4);}
.clp-meta{font-size:var(--t-label);}

/* ── 테이블 타이틀(thead)·요약 박스 포인트 배경 (2026-07 #2) ── */
.cmp-fintable thead th{background:var(--brand-ink);color:#dcebe6;border-bottom:1px solid var(--brand-ink);}
.cmp-fintable thead th:first-child{border-radius:10px 0 0 0;}
.cmp-fintable thead th:last-child{border-radius:0 10px 0 0;}
.cmp-fin__scroll{border:1px solid var(--line);border-radius:10px;overflow:hidden;}
.cmp-fin__scroll .cmp-fintable{min-width:0;}
/* 목표주가 요약: 포인트 배경 + 밝은 글자 */
.cmp-brokerstat{background:var(--brand-ink);border:0;border-radius:12px;color:#eaf3f0;padding:14px 18px;}
.cmp-brokerstat__lb{color:#bcd6cd;}
.cmp-brokerstat__n{color:#9fc2b7;}
.cmp-brokerstat__range .cmp-brokerstat__v{color:#fff;}
.cmp-brokerstat__avg{color:#fff;font-weight:800;}
.cmp-brokerstat__sep{color:#9fc2b7;}
.cmp-brokerstat__dist .cmp-op{background:#fff;}

/* ── 포인트 톤 조정(2026-07 v2): 진한 배경 → 연한 브랜드 tint ── */
:root{ --brand-tint:#e9f1ee; --brand-tint-line:#d5e5df; }
.cmp-fintable thead th{background:var(--brand-tint);color:var(--brand-ink);font-size:var(--t-body);font-weight:700;border-bottom:1px solid var(--brand-tint-line);}
/* 요약 통계 바(목표주가) — 첫 이미지 톤 */
.cmp-brokerstat{background:var(--brand-tint);border:1px solid var(--brand-tint-line);color:var(--brand-ink);}
.cmp-brokerstat__lb{color:var(--brand-ink);opacity:.8;}
.cmp-brokerstat__n{color:var(--brand-ink);opacity:.55;}
.cmp-brokerstat__range .cmp-brokerstat__v{color:var(--brand-ink);}
.cmp-brokerstat__avg{color:var(--brand-ink);font-weight:800;}
.cmp-brokerstat__sep{color:var(--brand-ink);opacity:.45;}
/* 최대주주 합계 지분율 바 — 요약 바와 동일 톤 */
.cmp-sh__total{background:var(--brand-tint);border:1px solid var(--brand-tint-line);border-radius:12px;padding:12px 18px;font-size:var(--t-body);color:var(--brand-ink);}
.cmp-sh__total b{color:var(--brand-ink);font-weight:800;}

/* ── 조정 v3 (2026-07): 모바일 스크롤 원복 + 요약 바 흰 배경 ── */
/* ② 표 가로 스크롤 복구(overflow:hidden·min-width:0 오버라이드 원복) */
.cmp-fin__scroll{overflow-x:auto;overflow-y:hidden;border:1px solid var(--line);border-radius:10px;-webkit-overflow-scrolling:touch;}
.cmp-fin__scroll .cmp-fintable{min-width:520px;}
/* ① 행 펼침 버튼 자체 토글 상태(펼치기 ↔ 접기) */
.cmp-morebtn.is-open .t-open{display:none;}
.cmp-morebtn.is-open .t-close{display:inline;}
.cmp-morebtn.is-open .cmp-morebtn__ic{transform:rotate(-135deg) translateY(-1px);}
/* ③ 최대주주 합계 바: 흰 배경·검정 글자, 끝값만 상승/하락 색 */
.cmp-sh__total{background:#fff;border:1px solid var(--line);color:var(--text);}
.cmp-sh__total b{color:var(--text);font-weight:800;}
.cmp-sh__total b.up{color:var(--up);}
.cmp-sh__total b.down{color:var(--down);}
.cmp-sh__arrow{color:var(--muted);}
/* ④ 목표주가 요약 바: 흰 배경, 값은 검정·평균만 브랜드 포인트 */
.cmp-brokerstat{background:#fff;border:1px solid var(--line);color:var(--text);}
.cmp-brokerstat__lb{color:var(--muted);opacity:1;}
.cmp-brokerstat__n{color:var(--muted-2);opacity:1;}
.cmp-brokerstat__range .cmp-brokerstat__v{color:var(--text);}
.cmp-brokerstat__avg{color:var(--brand-ink);font-weight:800;}
.cmp-brokerstat__sep{color:var(--muted);opacity:1;}

/* ── 카드 값 전문 표시(2026-07 v4): 4줄 클램프 해제, 개행(<br>) 다행 표시 ── */
.cmp-ev__v{display:block;overflow:visible;-webkit-line-clamp:unset;-webkit-box-orient:unset;max-height:none;white-space:normal;}

/* ── 투자 대가 스코어 (2026-07 v5) ── */
.ci-stars{position:relative;display:inline-block;line-height:1;letter-spacing:2px;vertical-align:middle;}
.ci-stars__bg{color:#dfe5e1;}
.ci-stars__fg{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#f2b300;}
.cmp-guru__top{display:flex;flex-wrap:wrap;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px;}
.cmp-guru__starswrap .ci-stars{font-size:30px;}
.cmp-guru__score{font-size:26px;color:var(--text);line-height:1;}
.cmp-guru__score b{font-weight:800;color:var(--brand-ink);}
.cmp-guru__max{font-size:15px;color:var(--muted);margin-left:2px;}
.cmp-guru__pass{font-size:var(--t-label);color:var(--muted);padding:6px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;}
.cmp-guru__netnet{display:inline-block;font-size:var(--t-label);font-weight:700;line-height:1;color:#8a5a00;background:#fff3d6;border:1px solid #f0d18a;border-radius:999px;padding:6px 10px;}
.cmp-guru__cats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;margin-top:12px;}
.cmp-guru__cat{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;text-align:center;}
.cmp-guru__catname{font-size:var(--t-label);color:var(--muted);margin-bottom:6px;}
.cmp-guru__catstars .ci-stars{font-size:15px;letter-spacing:1px;}
.cmp-guru__catscore{margin-top:6px;font-size:var(--t-body);color:var(--text);}
.cmp-guru__catscore b{font-weight:800;color:var(--brand-ink);}
@media (max-width:640px){ .cmp-guru__starswrap .ci-stars{font-size:24px;} .cmp-guru__score{font-size:22px;} .cmp-guru__cats{grid-template-columns:repeat(2,1fr);} }

/* ── 핵심지표 그룹 캡션·값 스케일 (2026-07 v6) ── */
.cmp-mgroup__title{font-size:var(--t-body);font-weight:700;color:var(--brand-ink);}
.cmp-metric__val{font-size:var(--t-body);}
.cmp-metric__label{font-size:var(--t-label);}
.cmp-metric__sub{font-size:var(--t-note);}
.cmp-metrics__meta{font-size:var(--t-label);}

/* ── 메인 개편 (2026-07 v7): 최근 카드·랭킹 표·대가 랭킹 ── */
.mrc__grid{margin-top:4px;}
.cmp-ev__corp{display:flex;align-items:baseline;gap:6px;margin:-2px 0 8px;}
.cmp-ev__corp a{font-size:var(--t-body);font-weight:800;color:var(--brand-ink);text-decoration:none;}
.cmp-ev__corp a:hover{text-decoration:underline;}
.cmp-ev__corpcode{font-size:var(--t-note);color:var(--muted-2);font-family:var(--mono);}
.mrk__ctrl{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;}
.mrk__tabs{margin:0;}
.mrk__scroll{background:#fff;}
.mrk__tbl th.mrk__rankth{width:64px;}
.mrk__tbl th.mrk__valth,.mrk__tbl td.mrk__val{text-align:right;}
.mrk__tbl td.mrk__rank{font-family:var(--mono);font-weight:700;color:var(--muted);text-align:center;}
.mrk__corp{font-weight:700;color:var(--text);text-decoration:none;}
.mrk__corp:hover{color:var(--brand-ink);text-decoration:underline;}
.mrk__code{margin-left:8px;font-size:var(--t-note);color:var(--muted-2);font-family:var(--mono);}
.mrk__val b{color:var(--brand-ink);font-weight:800;}
.mrk__max{font-size:var(--t-label);color:var(--muted);}
.mrk__stars{font-size:var(--t-label);color:#f2b300;font-weight:700;margin-left:6px;white-space:nowrap;}
.mrk__empty{text-align:center;color:var(--muted);padding:26px 0;}
.guru-rank{padding-top:0;}
/* 랭킹 표: 종목 좌측정렬(순위 옆) + 시세 열 (2026-07 v7.1) */
.mrk__tbl thead th.mrk__corpth,.mrk__tbl tbody td.mrk__corptd{text-align:left;}
.mrk__tbl thead th.mrk__priceth,.mrk__tbl tbody td.mrk__price{text-align:right;}
.mrk__tbl td.mrk__price{font-family:var(--mono);color:var(--text);}
.mrk__tbl th.mrk__rankth{width:56px;}
/* 종목 헤더 거래상태 배지 (2026-07 v7.2) */
.cmp-head__flag{display:inline-block;vertical-align:middle;margin-left:8px;padding:5px 10px;border-radius:999px;font-size:var(--t-label);font-weight:700;line-height:1;}
.cmp-head__flag.flag-halt{color:#a3271f;background:#fdecea;border:1px solid #f3c1bc;}
.cmp-head__flag.flag-admin{color:#8a5a00;background:#fff3d6;border:1px solid #f0d18a;}
.cmp-head__flag.flag-none{color:var(--muted);background:#f1f3f2;border:1px solid var(--line);}
/* 랭킹 표 종목명: 표 mono 상속 해제 → 본문 글꼴(카드 종목명과 동일 계열) (2026-07 v7.3) */
.mrk__tbl td.mrk__corptd .mrk__corp{font-family:var(--sans);letter-spacing:-.01em;}

/* ── 종목 페이지 제목 위계·섹션 그룹핑 (2026-07 v8) ──
   대제목(h2): 녹색·좌측바·30px 유지 + 섹션 사이 헤어라인/여백으로 그룹 경계
   소제목(cap): 크기 20px(--t-h4)로 키우되 색은 먹색(--text)으로 → 대제목과 즉시 구분 */
.cmp-sec + .cmp-sec{border-top:1px solid var(--line);padding-top:36px;margin-top:36px;}
.cmp-sec__title{margin-bottom:18px;}
.cmp-fin__cap,.cmp-org__cap{font-size:var(--t-h4);font-weight:700;color:var(--text);margin:26px 0 12px;}
.cmp-fin__cap:first-of-type,.cmp-org__cap:first-of-type{margin-top:4px;}
.cmp-fin__cap .cmp-fin__unit,.cmp-org__cap .cmp-fin__unit{font-size:var(--t-label);font-weight:500;color:var(--muted);}
/* ── 섹션 끝맺음 표시 (2026-07 v8.1): 시작 실선 → 끝 페이드 헤어라인으로 교체 ──
   양끝이 투명하게 사라지는 1px 라인이라 '없는 듯 있는' 그룹 마감 표시가 된다 */
.cmp-sec + .cmp-sec{border-top:0;padding-top:32px;margin-top:0;}
section.cmp-sec:not(:last-of-type)::after{content:'';display:block;height:1px;margin-top:42px;background:linear-gradient(90deg, transparent 0, var(--line) 16%, var(--line) 84%, transparent 100%);}
/* §6 공시·이벤트 대분류 캡션도 소제목 통일 형식 적용 (2026-07 v8.2) */
.cmp-catblk__name{font-size:var(--t-h4);font-weight:700;color:var(--text);margin:26px 0 12px;}
.cmp-catblk:first-of-type .cmp-catblk__name{margin-top:4px;}
/* §6 캡션 밑줄 제거 — 다른 소제목과 동일 형식 (2026-07 v8.3) */
.cmp-catblk__name{border-bottom:0;padding-bottom:0;}
/* '주주총회 승인금액' 캡션도 소제목 통일 형식 (2026-07 v8.4) */
.cmp-comp__subcap{font-size:var(--t-h4);font-weight:700;color:var(--text);margin:26px 0 12px;border-bottom:0;padding-bottom:0;}

/* ── 오늘의 종목 탐구생활 (2026-07 v9) ── */
.explore .exp__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
.exp-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;}
.exp-card__head{display:flex;flex-wrap:wrap;align-items:center;gap:8px;}
.exp-card__name{font-size:var(--t-h4);font-weight:800;color:var(--brand-ink);text-decoration:none;}
.exp-card__name:hover{text-decoration:underline;}
.exp-card__code{font-size:var(--t-note);color:var(--muted-2);font-family:var(--mono);}
.exp-card__mkt{font-size:var(--t-note);font-weight:700;color:var(--muted);border:1px solid var(--line);border-radius:6px;padding:3px 7px;line-height:1;}
.exp-badge{font-size:var(--t-note);font-weight:700;line-height:1;border-radius:999px;padding:5px 9px;}
.exp-badge--brk{color:#a3271f;background:#fdecea;border:1px solid #f3c1bc;}
.exp-badge--pull{color:#1d4fb8;background:#eaf1fd;border:1px solid #bfd3f5;}
.exp-badge--both{color:#8a5a00;background:#fff3d6;border:1px solid #f0d18a;}
.exp-card__sector{margin-top:6px;font-size:var(--t-label);color:var(--muted);}
.exp-card__score{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;}
.exp-card__score .ci-stars{font-size:17px;}
.exp-card__scoretxt{font-size:var(--t-body);color:var(--text);}
.exp-card__scoretxt b{font-weight:800;color:var(--brand-ink);}
.exp-card__ranks{margin-top:8px;font-size:var(--t-label);font-weight:600;color:var(--brand-ink);background:var(--tint,#eef5f1);border-radius:8px;padding:8px 10px;display:inline-block;}
.exp-card__fin{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0 0;}
.exp-card__f{background:#fafbfa;border:1px solid var(--line);border-radius:10px;padding:8px 10px;text-align:center;}
.exp-card__f dt{font-size:var(--t-note);color:var(--muted);}
.exp-card__f dd{margin:4px 0 0;font-size:var(--t-body);font-weight:700;color:var(--text);font-family:var(--mono);}
.exp-card__meta{margin-top:12px;font-size:var(--t-label);color:var(--muted);}
.exp-card__meta b{color:var(--text);font-family:var(--mono);font-weight:700;}
.exp__morebtn{margin:16px auto 0;}
.exp__hist{margin-top:12px;background:#fff;}
.exp__hdate{font-family:var(--mono);color:var(--muted);}
.exp__note{margin:14px 0 0;font-size:var(--t-note);color:var(--muted);line-height:1.6;}
@media (max-width:760px){ .explore .exp__grid{grid-template-columns:1fr;} .exp-card__fin{grid-template-columns:repeat(2,1fr);} }

/* ── 탐구생활 더보기 페이지·링크 (2026-07 v10) ── */
a.cmp-morebtn{text-decoration:none;display:inline-flex;align-items:center;gap:8px;}
.exp__morelink{display:flex;width:max-content;}
.exp__morelink .cmp-morebtn__ic{transform:rotate(-135deg);margin-top:2px;}
.explore-page{padding:34px 0 60px;}
.expp__back{margin:0 0 14px;font-size:var(--t-label);}
.expp__back a{color:var(--muted);text-decoration:none;}
.expp__back a:hover{color:var(--brand-ink);text-decoration:underline;}
.expp__scroll{background:#fff;}
/* 탐구생활 전체 기록 페이저 (2026-07 v10.1) */
.expp__count{margin:0 0 10px;font-size:var(--t-label);color:var(--muted);}
.expp__count b{color:var(--text);}
.expp__pager{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:16px;}
.expp__pgbtn{font-size:var(--t-label);font-weight:700;color:var(--brand-ink);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:8px 14px;background:#fff;}
.expp__pgbtn:hover{border-color:var(--brand);}
.expp__pgnow{font-size:var(--t-label);color:var(--muted);font-family:var(--mono);}
/* 탐구생활 전체 기록: 보기 토글·정렬 (2026-07 v10.2) */
.expp__bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px;}
.expp__bar .expp__count{margin:0;}
.expp__views{display:flex;gap:6px;}
.expp__viewbtn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:34px;border:1px solid var(--line);border-radius:9px;background:#fff;}
.expp__viewbtn.is-on{border-color:var(--brand);background:var(--tint,#eef5f1);}
.expp__ic{display:block;width:16px;height:16px;position:relative;}
.expp__ic--card{background:linear-gradient(var(--muted),var(--muted)) 0 0/7px 7px no-repeat,linear-gradient(var(--muted),var(--muted)) 100% 0/7px 7px no-repeat,linear-gradient(var(--muted),var(--muted)) 0 100%/7px 7px no-repeat,linear-gradient(var(--muted),var(--muted)) 100% 100%/7px 7px no-repeat;}
.expp__ic--list{background:linear-gradient(var(--muted),var(--muted)) 0 1px/16px 3px no-repeat,linear-gradient(var(--muted),var(--muted)) 0 7px/16px 3px no-repeat,linear-gradient(var(--muted),var(--muted)) 0 13px/16px 3px no-repeat;}
.expp__viewbtn.is-on .expp__ic--card{background:linear-gradient(var(--brand-ink),var(--brand-ink)) 0 0/7px 7px no-repeat,linear-gradient(var(--brand-ink),var(--brand-ink)) 100% 0/7px 7px no-repeat,linear-gradient(var(--brand-ink),var(--brand-ink)) 0 100%/7px 7px no-repeat,linear-gradient(var(--brand-ink),var(--brand-ink)) 100% 100%/7px 7px no-repeat;}
.expp__viewbtn.is-on .expp__ic--list{background:linear-gradient(var(--brand-ink),var(--brand-ink)) 0 1px/16px 3px no-repeat,linear-gradient(var(--brand-ink),var(--brand-ink)) 0 7px/16px 3px no-repeat,linear-gradient(var(--brand-ink),var(--brand-ink)) 0 13px/16px 3px no-repeat;}
.exp-card__date{margin-left:auto;font-size:var(--t-note);color:var(--muted);white-space:nowrap;}
.expp__tbl th.expp__c,.expp__tbl td.expp__c{text-align:center;}
.expp__tbl td.expp__c .mrk__corp{font-family:var(--sans);}
/* 더보기 페이지: 카드 2열(PC) + 리스트 첫 열 헤더 중앙 강제 (2026-07 v10.3) */
.explore-page .exp__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
@media (max-width:760px){ .explore-page .exp__grid{grid-template-columns:1fr;} }
.expp__tbl thead th.expp__c,.expp__tbl tbody td.expp__c{text-align:center;}
/* 이벤트 카드 모바일: 제목/메타 한 줄씩 스택 (2026-07 v10.4) */
@media (max-width:640px){
	.cmp-ev__head{flex-direction:column;align-items:flex-start;gap:6px;}
	.cmp-ev__head .cmp-ev__title{width:100%;}
	.cmp-ev__head .cmp-ev__meta{width:100%;justify-content:flex-start;flex-wrap:wrap;gap:8px;}
}

/* ── AI 종목 상세 리포트 (2026-07 v11) ── */
/* §8 버튼 */
.cmp-airow{margin:34px 0 0;text-align:center;}
.cmp-aibtn{-webkit-appearance:none;appearance:none;cursor:pointer;display:inline-flex;align-items:center;gap:10px;border:1px solid var(--brand);border-radius:999px;background:linear-gradient(180deg,#fff, #f2f8f5);color:var(--brand-ink);font-size:var(--t-body);font-weight:800;padding:14px 26px;box-shadow:0 2px 10px rgba(15,61,46,.08);}
.cmp-aibtn:hover{background:var(--tint,#eef5f1);}
.cmp-aibtn__spark{color:var(--brand);}
.cmp-airow__note{margin:10px 0 0;font-size:var(--t-note);color:var(--muted);}
/* 오버레이·모달 */
body.aiR-lock{overflow:hidden;}
.aiR-overlay{position:fixed;inset:0;z-index:1000;background:rgba(12,20,17,.55);display:flex;align-items:center;justify-content:center;padding:20px;}
.aiR-modal{background:#fff;border-radius:16px;width:min(980px,100%);max-height:92vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.3);}
.aiR-modal__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;border-radius:16px 16px 0 0;}
.aiR-modal__title{font-size:var(--t-h4);font-weight:800;color:var(--brand-ink);}
.aiR-modal__btns{display:flex;gap:8px;}
.aiR-btn{-webkit-appearance:none;appearance:none;cursor:pointer;border:1px solid var(--line);background:#fff;border-radius:9px;font-size:var(--t-label);font-weight:700;color:var(--text);padding:8px 14px;}
.aiR-btn:hover{border-color:var(--brand);color:var(--brand-ink);}
.aiR-btn--x{width:38px;padding:8px 0;text-align:center;}
.aiR-modal__body{overflow-y:auto;padding:20px 22px 26px;}
/* 새창 페이지 */
.aiR-page{padding:30px 0 60px;}
.aiR-page__bar{display:flex;align-items:center;justify-content:space-between;margin:0 0 14px;}
/* 리포트 본문 */
.aiR-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fafbfa;}
.aiR-top__id{font-size:var(--t-h4);color:var(--text);}
.aiR-top__id b{font-weight:800;}
.aiR-top__code{margin-left:8px;font-size:var(--t-label);color:var(--muted-2);font-family:var(--mono);}
.aiR-top__badges{display:flex;flex-wrap:wrap;align-items:center;gap:8px;}
.aiR-top__date{font-size:var(--t-note);color:var(--muted);font-family:var(--mono);}
.aiR-sec{margin-top:26px;}
.aiR-h{font-size:var(--t-h4);font-weight:800;color:var(--brand-ink);margin:0 0 10px;padding-left:11px;border-left:3px solid var(--brand);line-height:1.25;}
.aiR-p{margin:8px 0;font-size:var(--t-body);line-height:1.75;color:var(--text);}
.aiR-headline{margin:2px 0 10px;font-size:calc(var(--t-body) + 2px);font-weight:800;color:var(--text);line-height:1.5;}
.aiR-sub{margin:14px 0 6px;font-size:var(--t-label);font-weight:800;color:var(--muted);}
.aiR-ul{margin:6px 0;padding-left:20px;}
.aiR-ul li{margin:5px 0;font-size:var(--t-body);line-height:1.65;color:var(--text);}
.aiR-src{display:inline-block;margin-left:4px;color:var(--brand-ink);text-decoration:none;font-weight:700;}
.aiR-src:hover{text-decoration:underline;}
.aiR-badge{display:inline-block;font-size:var(--t-note);font-weight:700;line-height:1;border-radius:999px;padding:5px 10px;border:1px solid var(--line);color:var(--muted);background:#f6f7f6;}
.aiR-badge.is-high{color:#a3271f;background:#fdecea;border-color:#f3c1bc;}
.aiR-badge.is-mid{color:#8a5a00;background:#fff3d6;border-color:#f0d18a;}
.aiR-badge.is-low{color:#4c5b55;background:#f1f3f2;border-color:var(--line);}
.aiR-badge.is-pos{color:#a3271f;background:#fdecea;border-color:#f3c1bc;}
.aiR-badge.is-neg{color:#1d4fb8;background:#eaf1fd;border-color:#bfd3f5;}
.aiR-badge.is-neu{color:#4c5b55;background:#f1f3f2;}
.aiR-badge.is-rating{color:#0f3d2e;background:#e2efe9;border-color:#bcd9cc;font-weight:800;}
.aiR-badge.is-tag{color:var(--brand-ink);background:var(--tint,#eef5f1);border-color:#cfe2d8;}
.aiR-badge.is-trend{color:#0f3d2e;background:#e2efe9;border-color:#bcd9cc;margin-bottom:8px;}
.aiR-badge.is-sup{color:#1d4fb8;background:#eaf1fd;border-color:#bfd3f5;}
.aiR-badge.is-res{color:#a3271f;background:#fdecea;border-color:#f3c1bc;}
.aiR-point{border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin:10px 0;background:#fff;}
.aiR-point__head{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:var(--t-body);}
.aiR-point__head b{font-weight:800;color:var(--text);}
.aiR-evi{margin-top:8px;padding:10px 12px;border-left:3px solid var(--line-2,#dfe5e2);background:#fafbfa;border-radius:0 8px 8px 0;font-size:var(--t-label);color:var(--muted);line-height:1.6;}
.aiR-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0;}
.aiR-chip{position:relative;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fafbfa;text-align:center;}
.aiR-chip dt{font-size:var(--t-note);color:var(--muted);}
.aiR-chip dd{margin:4px 0 0;font-size:var(--t-body);font-weight:800;font-family:var(--mono);color:var(--text);}
.aiR-chip__tr{display:block;margin-top:3px;font-size:var(--t-note);color:var(--brand-ink);font-weight:700;}
.aiR-kvs{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 14px;margin:10px 0;}
.aiR-kv{display:flex;gap:10px;border:1px solid var(--line);border-radius:10px;padding:9px 12px;background:#fff;}
.aiR-kv dt{flex:0 0 84px;font-size:var(--t-label);font-weight:800;color:var(--muted);}
.aiR-kv dd{margin:0;font-size:var(--t-label);color:var(--text);font-family:var(--mono);}
.aiR-lv{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0;}
.aiR-lv__lb{font-size:var(--t-label);font-weight:800;color:var(--muted);margin-right:4px;}
.aiR-ev{display:flex;gap:12px;padding:10px 0;border-bottom:1px dashed var(--line);}
.aiR-ev:last-of-type{border-bottom:0;}
.aiR-ev__date{flex:0 0 92px;font-family:var(--mono);font-size:var(--t-label);color:var(--muted);padding-top:2px;}
.aiR-ev__body{flex:1;font-size:var(--t-body);}
.aiR-ev__body b{font-weight:800;color:var(--text);}
.aiR-ev__body .aiR-p{margin:4px 0 0;font-size:var(--t-label);color:var(--muted);}
.aiR-tags{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0;}
.aiR-risk{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:10px 0;background:#fff;}
.aiR-risk__head{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:var(--t-body);}
.aiR-risk__head b{font-weight:800;color:var(--text);margin-right:2px;}
.aiR-risk .aiR-p{margin:6px 0 0;font-size:var(--t-label);}
.aiR-tblwrap{overflow-x:auto;margin:10px 0;}
.aiR-tbl{width:100%;border-collapse:collapse;font-size:var(--t-label);}
.aiR-tbl th{background:#f6f8f7;color:var(--muted);font-weight:800;text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);white-space:nowrap;}
.aiR-tbl td{padding:9px 10px;border-bottom:1px solid var(--line-2,#eceeed);color:var(--text);vertical-align:top;}
.aiR-tbl .ta-r{text-align:right;font-family:var(--mono);white-space:nowrap;}
.aiR-fair{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin:12px 0;padding:12px 14px;border:1px solid #bcd9cc;border-radius:12px;background:#f2f8f5;font-size:var(--t-body);color:var(--text);}
.aiR-fair__lb{font-size:var(--t-label);font-weight:800;color:var(--brand-ink);margin-right:4px;}
.aiR-fair b{font-family:var(--mono);font-weight:800;}
.aiR-fair__mid{color:var(--brand-ink);font-size:calc(var(--t-body) + 2px);}
.aiR-op{margin-top:12px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fafbfa;}
.aiR-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:8px;}
.aiR-col{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff;}
.aiR-disc{margin-top:24px;padding-top:12px;border-top:1px solid var(--line);}
.aiR-disc p{margin:4px 0;font-size:var(--t-note);color:var(--muted);line-height:1.6;}
.aiR-loading{padding:60px 10px;text-align:center;font-size:var(--t-body);color:var(--muted);line-height:1.8;}
.aiR-loading small{font-size:var(--t-note);}
.aiR-spin{display:inline-block;width:18px;height:18px;margin-right:10px;vertical-align:-3px;border:3px solid var(--line);border-top-color:var(--brand);border-radius:50%;animation:aiRspin .8s linear infinite;}
@keyframes aiRspin{to{transform:rotate(360deg);}}
.aiR-err{padding:40px 10px;text-align:center;font-size:var(--t-body);color:#a3271f;}
@media (max-width:760px){
	.aiR-chips{grid-template-columns:1fr;}
	.aiR-kvs{grid-template-columns:1fr;}
	.aiR-cols{grid-template-columns:1fr;}
	.aiR-modal{max-height:96vh;}
	.aiR-ev{flex-direction:column;gap:2px;}
	.aiR-ev__date{flex:none;}
}
/* AI 리포트: 섹션 끝맺음 페이드 라인 — 종목 페이지와 동일 톤 (2026-07 v11.1) */
.aiR-sec:not(:last-of-type)::after{content:'';display:block;height:1px;margin-top:26px;background:linear-gradient(90deg, transparent 0, var(--line) 16%, var(--line) 84%, transparent 100%);}
/* AI 분석 리포트 섹션(대가 스코어 하단 그룹) 내부 여백 (2026-07 v11.2) */
.cmp-sec.cmp-ai .cmp-airow{margin-top:10px;}