/* Approved chart and revenue layouts, shared by company pages. */
.revenue-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:16px 0;align-items:stretch}.revenue-pair>section{margin:0!important;padding:22px 24px!important;min-width:0;min-height:620px;display:flex;flex-direction:column}.grid.single-panel{grid-template-columns:1fr!important}.grid.single-panel:empty{display:none}.revenue-total small,.revenue-total strong{display:block}.revenue-total small{color:#84908a;font-size:13px;margin:8px 0 3px}.revenue-total strong{font-size:29px;color:#28614b}.revenue-composition{position:relative;height:280px;flex:none;display:flex;align-items:center;justify-content:center;width:100%;max-width:560px;margin:0 auto 8px}.revenue-ring{width:218px;height:218px;border-radius:50%;display:grid;place-items:center}.revenue-hole{width:116px;height:116px;border-radius:50%;background:white;display:grid;place-items:center}.revenue-hole img{width:65px;height:65px;border-radius:14px;object-fit:contain}.revenue-label{width:112px;position:absolute;top:var(--label-y);text-align:center;transform:translateY(-20%)}.revenue-label-left{right:calc(50% + 110px)}.revenue-label-right{left:calc(50% + 110px)}.revenue-label span{display:block;font-size:17px;font-weight:600}.revenue-label b{display:block;font-size:30px;line-height:1.4}.revenue-table{width:100%!important;max-width:580px;margin:auto auto 0;table-layout:fixed;border-collapse:collapse}.revenue-table th,.revenue-table td{font-size:19.6667px!important;text-align:center!important;padding:12px 4px!important;white-space:normal!important}.revenue-table th{background:#f5f4ec!important}.revenue-key{display:inline-flex;align-items:center;justify-content:center;gap:5px}.revenue-key i{display:inline-block;width:8px;height:8px;flex:none;border-radius:2px}.revenue-table .revenue-total-row td{background:#edf3df!important;font-weight:700}.revenue-table tr>td:first-child{background:transparent!important}.revenue-table .revenue-total-row>td:first-child{background:#edf3df!important}.revenue-pair #geography .map,.revenue-pair #geography .company-region-map{flex:1;display:flex;align-items:center;justify-content:center;min-height:260px}.revenue-pair #geography svg{width:100%!important;max-height:360px!important;margin:0!important}.revenue-pair #geography .geo-legend{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px;margin:16px 0 8px!important;font-size:19.6667px!important}.revenue-pair #geography .geo-legend *{font-size:19.6667px!important}.revenue-pair #geography .region-bar{display:none!important}.revenue-pair #geography .latest-label{display:none!important}.growth-grid{margin-top:0!important;margin-bottom:0!important;display:block}
@media(min-width:761px){#charts.stock-card.expanded>.company-head{display:flex!important;margin-left:7%!important;margin-right:7%!important;width:auto!important}#charts.expanded .period-toolbar{margin-left:7%!important;margin-right:7%!important;width:auto!important}}
@media(max-width:1100px){.revenue-pair{grid-template-columns:1fr}.revenue-pair>section{min-height:550px}}
@media(max-width:760px){.revenue-pair{gap:14px;margin:14px 0}.revenue-pair>section{padding:17px 14px!important;min-height:0}.revenue-total strong{font-size:24px}.revenue-composition{height:222px}.revenue-ring{width:154px;height:154px}.revenue-hole{width:84px;height:84px}.revenue-hole img{width:48px;height:48px;border-radius:10px}.revenue-label{width:78px}.revenue-label-left{right:calc(50% + 77px)}.revenue-label-right{left:calc(50% + 77px)}.revenue-label span{font-size:12px}.revenue-label b{font-size:23px}.revenue-table th,.revenue-table td{font-size:12px!important;padding:9px 2px!important}.revenue-pair #geography .map,.revenue-pair #geography .company-region-map{min-height:200px}.revenue-pair #geography .geo-legend,.revenue-pair #geography .geo-legend *{font-size:14px!important}.revenue-pair #geography .geo-legend{gap:12px 8px}.growth-grid{margin-top:-12px!important}#income .metric,#eps .metric{font-size:23px!important;white-space:nowrap}.metric-kind{font-size:9px!important}.metric-pair-gap{display:inline-block;width:8px}#ratios .ratios{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}#ratios .ratios>div{padding:13px 7px!important;min-width:0;min-height:132px;box-sizing:border-box}#ratios .ratios label{display:block!important;font-size:12px!important;line-height:1.5!important}#ratios .ratio-title,#ratios .ratio-formula{display:block;white-space:nowrap}#ratios .ratio-formula{font-size:10px!important;letter-spacing:-.5px;margin-top:8px}#ratios .ratio-formula small{display:none}#ratios .ratios b{font-size:23px!important;white-space:nowrap;display:block;margin-top:17px!important;line-height:1.2}}
#ratios .ratio-title,#ratios .ratio-formula{display:block}.revenue-pair>#geography{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;gap:0!important}.revenue-pair>#geography>h3{margin:0!important;padding-bottom:16px;border-bottom:1px solid #e5e7e2}.revenue-pair>#geography #map-box{width:100%!important;flex:1;display:flex;align-items:center;justify-content:center;min-width:0}.revenue-pair>#geography #map-box svg{width:100%!important;height:auto!important;max-height:360px!important}.revenue-pair>#geography .geo-legend{width:100%!important;flex:none}.revenue-pair>#geography .geo-legend>div{display:flex!important;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.revenue-label-right{color:#637b61!important}
@media(max-width:760px){body.analysis-compact .growth-grid text.growth-value{font-size:12px!important}body.analysis-compact .growth-grid text.growth-label{font-size:12px!important}}
@media(max-width:760px){#income .growth-grid text.growth-value,#eps .growth-grid text.growth-value,#buybacks .growth-grid text.growth-value,#dividend .growth-grid text.growth-value{font-size:12px!important}#ratios .ratios b{font-size:22px!important}}

@media(max-width:760px){#income .growth-grid text,#eps .growth-grid text,#buybacks .growth-grid text,#dividend .growth-grid text{font-size:12px!important;letter-spacing:-1.2px}}
/* Use one shared content width for the expanded header, controls and summaries. */
@media(min-width:761px){#charts.stock-card.expanded>.company-head,#charts.expanded .period-toolbar{width:77%!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box}#charts.stock-card.expanded>.company-head{justify-content:flex-start;gap:16px;flex-wrap:wrap}}

/* Segment names wrap at words, including Korean words separated by spaces. */
.revenue-label span{word-break:keep-all;overflow-wrap:normal;hyphens:none;line-height:1.55}

/* ===== 2026-10-21 디자인 보정 (PC 폭 761px 이상만 적용, 모바일 규칙은 건드리지 않음) ===== */
@media (min-width:761px){
 /* 시황: 지수 카드 — 차트 왼쪽 여백 = 차트와 글자 사이 = 글자와 오른쪽 여백 (글자 폭은 shared-layout.js가 전체 카드 기준으로 통일) */
 body.markets-page .mc-indices-card .mc-indices .mc-index{display:flex!important;align-items:center;justify-content:space-evenly;gap:0!important;padding:8px 0!important}
 body.markets-page .mc-indices-card .mc-indices .mc-index>svg{flex:0 1 66px;width:66px!important;min-width:40px!important;max-width:66px!important}
 body.markets-page .mc-indices-card .mc-indices .mc-index-copy{flex:0 0 auto}
 /* 시황: 히트맵이 카드 높이에 눌려 아래가 잘리지 않도록 */
 body.markets-page .mc-map-card .mc-treemap{flex:0 0 auto}
 /* 13F: 고래 선택 줄 — 사진·캡션 길이와 상관없이 탭 두 줄 높이를 고정하고, 캡션은 최대 2줄 */
 .investor-picker-row{align-items:stretch!important}
 .investor-picker-row #profile{contain:size;min-height:0;overflow:hidden;align-self:stretch}
 .investor-picker-row #recommendations{align-self:start;height:auto!important}
 #recommendations button{overflow:hidden;line-height:1.25}
 .investor-picker-row .investor-tagline{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 /* 기관·월가: 월가 투자의견·내부자 거래 두 카드 높이 동일 (한/영 공통), 목록은 카드 안에서 스크롤 */
 .wall-record-grid{align-items:stretch!important}
 .wall-record-grid>.dashboard-card{display:flex!important;flex-direction:column;height:580px!important;min-height:0!important;overflow-x:auto;overflow-y:hidden}
 .wall-record-grid>.dashboard-card .text-ledger{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}
 .wall-record-grid>.dashboard-card .ledger-scroll{flex:1 1 auto;min-height:0;max-height:none!important;overflow-y:auto}
}

/* 2026-10-21: English labels in the liquidity table get a wider, wrapping label column so they never run into the values. */
html[lang="en"] body #liquidity .liq-content table{table-layout:fixed}
html[lang="en"] body #liquidity .liq-content th{width:96px!important;white-space:normal!important;padding-right:12px!important;line-height:1.3;word-break:normal;overflow-wrap:normal}
