:root{--green:#008653;--darkgreen:#005d38;--mint:#e3f3ec;--ink:#111923;--muted:#7d88a1;--line:#dfe5ed;--canvas:#fcfdfd}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--canvas);color:var(--ink);font-family:Pretendard,'Apple SD Gothic Neo',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input{font:inherit}button,a{outline-offset:4px}button{cursor:pointer;background:white;border:1px solid var(--line);border-radius:10px;padding:10px 16px;color:inherit}a{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #008653}button:hover{background:#f0f7f4}.sidebar{width:168px;position:fixed;inset:0 auto 0 0;padding:23px 12px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:10}.brand{padding:0 13px;text-decoration:none;font-family:Georgia,serif;font-size:30px;font-weight:800}.brand>span{color:var(--green)}.brand small{display:block;font-family:inherit;font-size:18px;margin-top:0}nav{display:grid;gap:8px;margin-top:25px}nav a{display:flex;gap:13px;align-items:center;text-decoration:none;color:#69758b;padding:13px 12px;font-size:14px;white-space:nowrap;border-radius:8px}nav a.active{background:var(--mint);color:var(--green);font-weight:700}nav svg{width:20px;height:20px;flex:none}.bottom{margin-top:auto;display:grid;gap:5px}.bottom button{border:0;text-align:left;color:#69758b;background:none}main{margin-left:168px;padding:36px 30px 30px;max-width:1800px}.hero{text-align:center;margin:7px 0 35px}.hero h1{font-size:clamp(42px,4.4vw,68px);font-weight:850;letter-spacing:-3px;margin:0}.hero h1 span{color:var(--green);vertical-align:top;font-size:50px;margin-left:10px}.hero p{font-size:26px;color:#3c485a;margin:10px 0}form{display:flex;align-items:center;border:1px solid #bec7d5;border-radius:17px;background:white;box-shadow:0 3px 8px #1b2d3d08;padding:7px;gap:16px}.search-icon{font-size:56px;line-height:1;margin-left:20px}input{flex:1;min-width:0;border:0;background:none;font-size:25px;padding:18px 0;outline:0}input::placeholder{color:#7d88a1}form button{background:#1d242a;color:white;border-color:#10171b;border-radius:12px;font-size:24px;font-weight:700;min-width:158px;padding:22px}.categories,.tickers{display:flex;justify-content:center;gap:12px;margin-top:28px;flex-wrap:wrap}.categories button,.tickers button{border-radius:35px;padding:13px 24px;font-size:20px;font-weight:650}.categories button.active{border-color:var(--green);background:#f2faf6;color:var(--green)}.tickers{margin-top:16px}.tickers button.active{background:#1c252a;color:white}.notice{text-align:center;color:#7b8792;font-size:12px;margin:20px 0}section{background:#fff;border:1px solid var(--line);border-radius:12px;padding:25px;margin:18px 0}.company-head{display:flex;gap:18px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px}.logo{width:68px;height:68px;background:#0b100b;color:#8dcd27;border-radius:7px;display:grid;place-content:center;font-weight:900;font-size:20px;line-height:1;flex:none;letter-spacing:-1px}.logo span{color:white;font-size:13px;letter-spacing:6px}.company-head h2{margin:0;font-size:28px}.company-head h2 small{color:var(--muted);font-size:16px;font-weight:400;margin-left:8px}.company-head p{color:var(--muted);font-size:15px;margin:8px 0 0}.tags{display:flex;margin-left:auto;gap:7px;flex-wrap:wrap}.tags span{border:1px solid var(--line);border-radius:6px;padding:6px 8px;font-size:12px;color:var(--muted)}#favorite{border:0;font-size:27px;padding:0;color:var(--muted)}.quote-row{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:22px 0}.quote-row strong{font-size:44px;letter-spacing:-1px}.quote-row small{color:var(--muted)}#change{font-size:21px;line-height:1.7}.positive{color:var(--green)}.negative{color:#c44344}.ranges{border-left:1px solid var(--line);padding-left:22px}.range{display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center;margin:8px 0 20px}.range label{font-size:12px;color:var(--muted)}.range b{display:block;font-size:15px;color:#14202a;margin-top:3px}.track{height:7px;border-radius:7px;background:#e9edf2;position:relative}.track i{position:absolute;width:11px;height:11px;background:var(--green);border-radius:50%;top:-2px}.chart-toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:15px}.switch{display:flex;gap:4px}.selected,.toggle .selected{background:var(--green);color:white;border-color:var(--green)}.tv-chart{height:590px;min-width:0;width:100%;border:1px solid var(--line);border-radius:10px;overflow:hidden}.tradingview-widget-container{height:100%;width:100%}.tradingview-widget-container__widget{height:calc(100% - 32px);width:100%}.tradingview-widget-copyright{font-size:12px;text-align:center;padding:7px;color:var(--muted)}.stock-card.expanded{position:fixed;inset:12px;z-index:100;margin:0;overflow:auto;box-shadow:0 0 0 20px #0007}.stock-card.expanded .tv-chart{height:calc(100vh - 280px)}.stock-card.expanded .company-head,.stock-card.expanded .quote-row{display:none}.summary-title{font-size:clamp(32px,3.5vw,52px);letter-spacing:-2px;margin:38px 0 15px}.summary-title span{color:var(--darkgreen)}h3{font-size:27px;margin:0;letter-spacing:-1px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.grid section{margin:0;min-width:0}.grid{margin:18px 0}.heading{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.heading small,.subtitle{display:block;color:var(--muted);margin-top:7px;font-size:14px;line-height:1.5}.toggle{display:flex;gap:4px}.toggle button{padding:8px 15px;font-size:15px}.source{font-size:11px;line-height:1.7;color:#8490a2;margin:16px 0 0}.source a{text-decoration:underline}.chart-svg{width:100%;height:auto;display:block;margin:24px 0 12px;overflow:visible}.chart-svg text{font-family:inherit;fill:#64748b;font-size:13px}.chart-svg .value{fill:#143629;font-size:14px;font-weight:650}.chart-svg circle,.chart-svg rect{transition:opacity .2s}.chart-svg circle:hover,.chart-svg rect:hover{opacity:.7}.big-metric{font-size:39px;font-weight:750;color:var(--darkgreen);margin-top:22px}.big-metric small{font-size:13px;color:var(--muted);font-weight:400}.metric-row{display:flex;align-items:center;justify-content:space-between}.metric-row>span{font-size:14px;color:var(--muted);text-align:right}.metric-row b{display:block;font-size:25px;color:var(--green)}table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:11px 9px;border-bottom:1px solid var(--line);text-align:right}th:first-child,td:first-child{text-align:left}th{background:#f2f4f7;color:#33455b}td.positive{font-weight:600}.legend{display:flex;justify-content:center;flex-wrap:wrap;gap:20px;margin-top:15px;font-size:14px;color:#53657c}.legend i{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:6px}.donut-layout{display:flex;align-items:center;gap:22px;margin:25px 0}.donut{width:230px;height:230px;flex:none;border-radius:50%;display:grid;place-items:center}.donut-center{width:150px;height:150px;border-radius:50%;background:white;display:grid;place-content:center;text-align:center;color:var(--darkgreen);font-size:24px;font-weight:800}.donut-center small{font-size:12px;color:var(--muted);font-weight:400}.segment-label{margin-bottom:22px}.segment-label strong{display:block;color:var(--green);font-size:24px;margin:4px 0}.company-info{font-size:18px;line-height:1.85;color:#4c5f79}.company-name{display:flex;gap:20px;align-items:center;margin:28px 0}.company-name h4{font-size:32px;margin:0}.company-name small{font-size:18px;color:#65748c}.facts-list{margin:25px 0 0}.facts-list div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:13px 0;font-size:16px}.facts-list dt{color:#43526b}.facts-list dd{margin:0}.ratios{display:grid;grid-template-columns:repeat(3,1fr);margin-top:30px}.ratios>div{padding:15px 7px;text-align:center;border-right:1px solid var(--line)}.ratios>div:last-child{border:0}.ratios label{font-size:17px;color:#465b77}.ratios b{display:block;color:var(--green);font-size:31px;margin:15px 0}.news-row{display:flex;gap:18px;align-items:center;padding:20px 0;border-bottom:1px solid var(--line);text-decoration:none}.news-art{width:82px;height:65px;background:#eef6f1;border-radius:7px;display:grid;place-items:center;color:var(--green);font-size:22px;font-weight:800}.news-row strong{display:block;font-size:18px}.news-row small{display:block;margin-top:7px;color:var(--muted)}details{background:white;border:1px solid var(--line);padding:20px;border-radius:10px;font-size:13px}summary{cursor:pointer;font-weight:650}footer{display:flex;justify-content:space-between;gap:20px;margin:30px 0;color:#5d6b82;font-size:13px}footer strong{color:var(--darkgreen);font-size:23px}dialog{max-width:900px;width:90%;max-height:85vh;border:1px solid var(--line);border-radius:14px;padding:26px}dialog::backdrop{background:#10251f88}#close-dialog{float:right}.phase-labels{display:grid;grid-template-columns:repeat(5,1fr);text-align:center;border:1px solid var(--line);border-bottom:0;margin-top:18px}.phase-labels span{padding:16px 4px;font-weight:750;border-right:1px solid var(--line)}.phase-labels .active{background:var(--mint);color:var(--green)}.phase-svg{width:100%;height:auto;display:block}.phase-svg text{font-family:inherit}.phase-foot{display:flex;justify-content:space-between;gap:16px;align-items:center}.periods{display:flex;gap:6px;flex-wrap:wrap}.periods button{font-size:13px;border:0}.map{width:100%;height:auto;display:block;margin-top:24px}.map path{stroke:white;stroke-width:.5}.map path:hover{opacity:.65}#audit{line-height:1.8}#audit ul{padding-left:20px}[hidden]{display:none!important}@media(min-width:1800px){main{margin-right:auto;margin-left:168px}}@media(max-width:1100px){main{padding:28px 22px}.tags{display:none}.donut-layout{flex-direction:column;align-items:center}.segment-labels{display:flex;gap:20px}.ratios b{font-size:25px}.categories button,.tickers button{font-size:17px;padding:11px 19px}.sidebar{width:155px}main{margin-left:155px}}@media(max-width:760px){.sidebar{position:static;width:100%;height:auto;padding:12px 16px;border-right:0;border-bottom:1px solid var(--line)}.brand{font-size:24px;padding:0}.brand small{display:inline;font-family:sans-serif;font-size:15px;margin-left:8px}nav{display:flex;overflow:auto;gap:0;margin:12px -10px 0}nav a{font-size:12px;padding:9px 10px}nav svg{width:16px}.bottom{display:none}main{margin:0;padding:24px 14px}.hero{margin:4px 0 24px}.hero h1{font-size:40px;letter-spacing:-2px}.hero h1 span{font-size:35px}.hero p{font-size:18px}.search-icon{font-size:35px;margin-left:8px}input{font-size:16px;padding:13px 0}form{gap:8px;border-radius:12px}form button{min-width:65px;font-size:17px;padding:13px}.categories,.tickers{flex-wrap:nowrap;justify-content:flex-start;overflow:auto;gap:7px;margin-top:17px}.categories button,.tickers button{font-size:14px;white-space:nowrap;padding:10px 17px;flex:none}.grid{grid-template-columns:1fr}.company-head{gap:12px}.logo{width:50px;height:50px}.company-head h2{font-size:23px}.company-head p{font-size:12px}.quote-row{grid-template-columns:1fr;gap:12px}.ranges{padding:0;border:0}.quote-row strong{font-size:37px}section{padding:18px}.tv-chart{height:480px}.summary-title{font-size:33px;margin-top:28px}h3{font-size:24px}.heading{gap:8px}.toggle button{padding:7px 10px;font-size:13px}.donut-layout{flex-direction:row;gap:15px}.donut{width:180px;height:180px}.donut-center{width:120px;height:120px}.segment-labels{display:block}.segment-label strong{font-size:21px}.phase-labels span{font-size:11px;padding:11px 3px}.phase-foot{align-items:flex-start;flex-direction:column}.ratios label{font-size:14px}.ratios b{font-size:24px}th,td{padding:9px 5px;font-size:12px}.company-info{font-size:16px}.facts-list div{font-size:14px}.chart-toolbar button{padding:9px 10px;font-size:12px}footer{flex-direction:column;gap:8px}.news-row strong{font-size:16px}.stock-card.expanded{inset:4px;padding:12px}.stock-card.expanded .tv-chart{height:calc(100dvh - 170px)}}

.logo{background:white;display:flex;align-items:center;justify-content:center;padding:5px}.logo img{display:block;width:100%;height:100%;object-fit:contain}.phase-current{display:block;margin-top:8px;font-size:12px;font-weight:600}.phase-labels .active{position:relative;z-index:1}.segment-total td{background:#eef7f2;font-weight:750}.segment-other td{color:#7d88a1;font-size:12px}

.company-name .logo{width:78px;height:78px}.logo img{transform:scale(1.65)}.logo{overflow:hidden}.segment-total td{white-space:nowrap}

.logo img{transform:scale(2.6)}#segments table th:first-child,#segments table td:first-child{min-width:68px;word-break:keep-all}#segments table td{padding-left:5px;padding-right:5px}

.logo img{transform:scale(2)}
/* Compact ivory research dashboard, keeping the full-width market chart. */
:root{--canvas:#f5f2eb;--line:#e4e1d8;--ink:#242b29;--muted:#85887e;--mint:#eaf2de;--green:#19804d;--darkgreen:#225d3d}
.sidebar{background:#faf8f2;border-color:#e4e1d8}main{padding-top:25px}.hero{margin:0 0 23px}.hero h1{font-size:clamp(36px,3.6vw,54px);letter-spacing:-2px}.hero h1 span{font-size:38px}.hero p{font-size:20px;margin:8px 0;color:#63675f}
form{max-width:980px;margin:0 auto;padding:5px 6px;gap:12px;border-color:#d6d5ca;border-radius:10px;box-shadow:0 2px 5px #363a2810}.search-icon{font-size:37px;margin-left:13px}input{font-size:19px;padding:12px 0}form button{min-width:110px;padding:12px 22px;font-size:18px;border-radius:7px;background:#252e2e}
.categories,.tickers{gap:8px;margin-top:18px}.tickers{margin-top:10px}.categories button,.tickers button{font-size:16px;padding:9px 20px;border-radius:9px;background:#fbfaf6;border-color:#e1dfd5}.categories button.active{background:#edf3df}.tickers button.active{background:#252e2e}.notice{margin:13px 0;font-size:11px;color:#898b80}
section{padding:20px;margin:13px 0;border-radius:8px;border-color:#e4e1d8;box-shadow:0 1px 3px #444a2510}.grid{gap:12px;margin:13px 0}h3{font-size:23px;letter-spacing:-.7px}.heading{padding-bottom:10px;border-bottom:1px solid #eeece5}.heading small,.subtitle{font-size:12px;color:#83877d}.summary-title{font-size:clamp(28px,3vw,40px);margin:27px 0 12px;letter-spacing:-1.3px}
.company-head{padding-bottom:15px}.company-head h2{font-size:25px}.company-head p{font-size:13px}.company-head .logo{width:59px;height:59px}.quote-row{padding:18px 0}.quote-row strong{font-size:38px}#change{font-size:18px}.company-name{margin:20px 0;gap:15px}.company-name h4{font-size:29px}.company-name small{font-size:15px}.company-info{font-size:16px;line-height:1.75;color:#596457}.facts-list{margin-top:18px}.facts-list div{padding:11px 0;font-size:14px}.facts-list dt{color:#697365}.source{color:#888b80}.toggle button{font-size:13px;padding:7px 12px;border-radius:6px}.toggle{gap:3px}.big-metric{font-size:32px;margin-top:17px}.metric-row b{font-size:22px}.metric-row>span{font-size:12px}th{background:#f4f3ec;color:#535f52}th,td{padding:9px 7px}.phase-labels{background:#faf9f3;margin-top:14px}.phase-labels span{font-size:14px;padding:12px 3px}.phase-labels .active{background:#edf4dd}.phase-current{font-size:11px;margin-top:6px}.ratios label{font-size:15px}.ratios b{font-size:28px}.news-row strong{font-size:16px}.news-row small{font-size:12px}.news-art{background:#f0f3e7}.donut-layout{margin:20px 0}.segment-total td{background:#edf3df}details{background:#faf9f4;border-radius:8px}.tv-chart{border-color:#e1e2da}
@media(max-width:760px){main{padding:19px 12px}.hero h1{font-size:36px}.hero h1 span{font-size:28px}.hero p{font-size:16px}.hero{margin-bottom:18px}.search-icon{font-size:29px;margin-left:7px}input{font-size:15px;padding:10px 0}form button{font-size:15px;min-width:65px;padding:11px 13px}.categories button,.tickers button{font-size:13px;padding:8px 14px}.categories{margin-top:15px}section{padding:16px}.summary-title{font-size:29px}h3{font-size:21px}.phase-labels span{font-size:10px}.phase-current{font-size:9px}.company-info{font-size:15px}.company-name .logo{width:65px;height:65px}.company-name h4{font-size:25px}.ratios b{font-size:24px}.ratios label{font-size:13px}}

.chart-guide{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 15px;margin:0 0 14px;background:#f3f5ec;border-radius:7px}.chart-guide strong{font-size:16px;color:#285b3c}.chart-guide span{font-size:12px;color:#747d70}@media(max-width:760px){.chart-guide{flex-direction:column;align-items:flex-start}.chart-guide span{font-size:11px}}

.compare-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}.compare-stats>div{padding:15px;background:#f5f6ef;border-radius:8px}.compare-stats small{display:block;color:#778272;font-size:12px}.compare-stats strong{display:block;font-size:27px;margin-top:8px}@media(max-width:760px){.compare-stats strong{font-size:20px}.compare-stats>div{padding:10px}.compare-stats small{font-size:10px}}
.switch .selected,.switch .selected:hover{background:#19804d;color:white;border-color:#19804d}.stock-card.expanded #local-chart{max-width:1500px;margin:auto}

.compare-stats{grid-template-columns:repeat(5,1fr)}.compare-stats strong{font-size:24px}.chart-toolbar{justify-content:flex-end}.stock-card.expanded #price-chart{width:100%}@media(max-width:900px){.compare-stats{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.compare-stats{grid-template-columns:repeat(2,1fr)}.compare-stats strong{font-size:20px}}

.period-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0}.period-toolbar #expand{white-space:nowrap;font-size:13px;padding:9px 12px}.compare-stats{grid-template-columns:repeat(3,1fr)}@media(max-width:760px){.period-toolbar{gap:5px}.periods{gap:0}.periods button{padding:8px 7px}.period-toolbar #expand{font-size:11px;padding:8px}.compare-stats{grid-template-columns:repeat(3,1fr)}}

#price-chart .endpoint-label{font-size:14px;font-weight:500;fill:#53657c}#price-chart .endpoint-price{fill:#285b3c}#price-chart .endpoint-benchmark{fill:#727d8c}
#price-chart .endpoint-label{fill:#285b3c}#price-chart .endpoint-benchmark{fill:#727d8c}
.periods button.selected,.periods button.selected:hover{background:#19804d;color:white}

@media(min-width:761px){main>.grid{grid-template-columns:1fr}main>.grid .chart-svg{max-height:390px}.company-info{font-size:16px}}
.seven-stage{grid-template-columns:repeat(7,1fr)!important}.seven-stage span{font-size:14px}.seven-stage .growth-stage{background:#e4f3df;color:#005d38}.value-chain{display:grid;grid-template-columns:1fr 40px 1.25fr 40px 1fr;align-items:center;gap:12px;margin:25px 0}.chain-group{background:#f7f9f5;border:1px solid #dfe5dd;border-radius:12px;padding:18px}.chain-group h4{margin:0 0 6px}.chain-group>small{color:#69758b}.chain-node{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:14px 0}.chain-node img{width:42px;height:42px;object-fit:contain}.chain-node small{color:#69758b}.chain-center{text-align:center;border:2px solid #008653;border-radius:16px;padding:22px}.chain-center .chain-node{justify-content:center;flex-direction:column;font-size:28px}.chain-center img{width:95px;height:95px}.chain-center small{font-size:14px}.chain-arrow{text-align:center;font-size:26px;color:#008653}.chain-bottom{grid-column:1/-1;border-top:1px solid #dfe5ed;display:flex;align-items:center;justify-content:center;gap:25px;padding-top:18px}.chain-bottom>span{color:#69758b;font-size:13px}#price-chart{position:relative}.price-tooltip{position:absolute;top:145px;z-index:3;pointer-events:none;min-width:180px;padding:12px;background:#fff;border:1px solid #dfe5ed;border-radius:8px;box-shadow:0 4px 15px #0002;font-size:13px}.price-tooltip span{display:block;margin-top:5px}@media(max-width:760px){.value-chain{grid-template-columns:1fr}.chain-arrow{transform:rotate(90deg)}.chain-bottom{flex-wrap:wrap}.seven-stage{overflow:auto}.seven-stage span{min-width:90px}}

.chain-center img{width:145px;height:125px}

.seven-stage span,.seven-stage .growth-stage{background:#faf9f3}.seven-stage .growth-stage{color:#005d38}.chain-node{flex-wrap:nowrap;gap:8px}.chain-node img{width:40px;height:40px;flex:0 0 40px;object-fit:contain;filter:none}.chain-node b{font-size:13px;white-space:nowrap}.chain-node small{font-size:11px;white-space:nowrap}.chain-group{padding:12px}.value-chain{grid-template-columns:minmax(0,1fr) 22px minmax(0,.9fr) 22px minmax(0,1fr);gap:8px}.chain-center .chain-node b{font-size:28px}.chain-center .chain-node img{width:145px;height:125px;flex:auto}.chain-ecosystem{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.chain-review{font-size:12px}.segment-label{font-size:15px}.segment-label:nth-child(1){color:#008653}.segment-label:nth-child(2){color:#64c79b}.segment-label strong{color:inherit}.segment-details{flex:1;min-width:0}.segment-details td:first-child{color:inherit}.segment-details tr:nth-child(1) td:first-child{color:#008653}.segment-details tr:nth-child(2) td:first-child{color:#64c79b}@media(min-width:761px){#segments .donut-layout{flex-direction:row;align-items:center;flex-wrap:wrap}#segments .segment-labels{display:none}}@media(max-width:760px){.value-chain{grid-template-columns:1fr}.chain-ecosystem{grid-template-columns:1fr}#segments .donut-layout{flex-wrap:wrap}.segment-details{flex-basis:100%}.chain-node b{font-size:14px}}

/* Compact overview: preserve every verified company in three balanced columns. */
.compact-chain{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch;margin:18px 0 10px}.compact-chain .chain-column{display:flex;flex-direction:column;gap:10px;min-width:0}.compact-chain .chain-group{padding:10px 11px;border-radius:10px}.compact-chain .chain-group h4{font-size:13px;margin:0 0 3px}.compact-chain .chain-group>small{display:block;font-size:10px;margin-bottom:4px}.compact-chain .chain-node{padding:3px 0;gap:6px;min-height:28px}.compact-chain .chain-node img{width:24px;height:24px;flex:0 0 24px}.compact-chain .chain-node b{font-size:11px}.compact-chain .chain-node small{font-size:9px;white-space:normal;line-height:1.2}.compact-chain .chain-center{padding:12px 8px;position:relative}.compact-chain .chain-center:before,.compact-chain .chain-center:after{position:absolute;top:50%;font-size:20px;color:#008653;content:'→'}.compact-chain .chain-center:before{left:-14px}.compact-chain .chain-center:after{right:-14px}.compact-chain .chain-center .chain-node{gap:4px}.compact-chain .chain-center .chain-node img{width:85px;height:60px;flex:auto}.compact-chain .chain-center .chain-node b{font-size:22px}.compact-chain .chain-center .chain-node small{font-size:10px}.compact-chain .chain-center p{font-size:11px;margin:8px 0 0}.compact-chain .chain-column>.chain-group:last-child{flex:1}#company .company-info{font-size:13px;margin:8px 0}.chain-review{margin-top:6px}
@media(max-width:760px){.compact-chain{grid-template-columns:1fr;gap:10px}.compact-chain .chain-middle{order:-1}.compact-chain .chain-center:before,.compact-chain .chain-center:after{display:none}.compact-chain .chain-node b{font-size:13px}.compact-chain .chain-node small{font-size:11px}.compact-chain .chain-group h4{font-size:14px}}

@media(min-width:761px){.compact-chain .chain-node{box-sizing:border-box;min-height:24px;height:24px;padding:1px 0;line-height:1.2}.compact-chain .chain-node img{width:22px;height:22px;flex-basis:22px}.compact-chain .chain-group{padding:8px 10px}.compact-chain .chain-group h4{line-height:18px}.compact-chain .chain-group>small{line-height:14px;margin-bottom:3px}.compact-chain .chain-center .chain-node{height:auto;min-height:98px}.compact-chain .chain-column{gap:8px}#company .chain-review{padding:8px 10px}#company .chain-review summary{font-size:11px}}

.clean-chain{display:block;margin:12px 0 8px}.chain-hub{width:210px;margin:auto;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px solid #cfd7d3;border-radius:12px;background:#fff;padding:10px}.chain-hub .chain-node{padding:0;gap:8px;flex-wrap:nowrap}.chain-hub .chain-node img{width:52px;height:40px;flex:0 0 52px}.chain-hub .chain-node b{font-size:20px}.chain-hub .chain-node small{display:none}.chain-hub>span{font-size:10px;color:#69758b;margin-top:4px}.chain-connectors{height:30px;display:grid;grid-template-columns:repeat(3,1fr);position:relative}.chain-connectors:before{content:'';position:absolute;left:50%;top:0;height:14px;border-left:2px solid #9ba8a2}.chain-connectors span{border-top:2px solid #346d9a;border-left:2px solid #346d9a;position:relative;margin:14px 0 0 50%}.chain-connectors span:first-child{margin-right:-50%}.chain-connectors span:nth-child(2){border-color:#78729e;margin-right:-50%}.chain-connectors span:last-child{border-color:#4d8d78;margin-right:50%;border-top:0}.chain-connectors span:after{content:'';position:absolute;left:-4px;bottom:-2px;width:6px;height:6px;border-radius:50%;background:currentColor}.chain-connectors span:nth-child(1){color:#346d9a}.chain-connectors span:nth-child(2){color:#78729e}.chain-connectors span:nth-child(3){color:#4d8d78}.chain-lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.chain-lane{--lane:#346d9a;border:1px solid #dfe5ed;border-top:3px solid var(--lane);border-radius:10px;padding:10px 12px;background:#f6f9fc}.chain-lane.partner{--lane:#78729e;background:#f8f7fb}.chain-lane.customer{--lane:#4d8d78;background:#f5f9f7}.chain-lane h4{display:flex;align-items:center;gap:6px;margin:0;font-size:14px;color:var(--lane);line-height:20px}.chain-lane h4 i{width:6px;height:6px;border-radius:50%;background:var(--lane)}.chain-lane h4 small{margin-left:auto;font-size:10px;font-weight:400;color:#758079}.chain-lane>p{font-size:10px;color:#758079;margin:3px 0 7px}.clean-chain .chain-lane .chain-node{padding:2px 0;min-height:25px;height:25px;box-sizing:border-box;gap:7px;line-height:1.2}.clean-chain .chain-lane .chain-node img{width:22px;height:22px;flex:0 0 22px}.clean-chain .chain-lane .chain-node b{font-size:11px}.clean-chain .chain-lane .chain-node small{font-size:9px;color:#6b7685;white-space:normal}.chain-adjacent{display:flex;align-items:center;gap:14px;margin-top:9px;padding:7px 10px;border:1px dashed #ddd;border-radius:8px;font-size:10px;color:#78817e}.chain-adjacent .chain-node{padding:0;min-height:22px;gap:6px}.chain-adjacent .chain-node img{width:22px;height:22px;flex:0 0 22px}.chain-adjacent .chain-node b,.chain-adjacent .chain-node small{font-size:10px}.chain-adjacent>span{margin-left:auto}#company .chain-review{padding:6px 10px}
@media(max-width:760px){.chain-lanes{grid-template-columns:1fr;gap:10px}.chain-connectors{display:none}.chain-hub{margin-bottom:12px}.clean-chain .chain-lane .chain-node b{font-size:13px}.clean-chain .chain-lane .chain-node small{font-size:11px}.chain-adjacent{flex-wrap:wrap;gap:8px}.chain-adjacent>span{margin-left:0}}

@media(min-width:761px){.chain-hub{flex-direction:row;width:300px;padding:6px 12px;gap:10px}.chain-hub .chain-node img{height:30px;width:40px;flex-basis:40px}.chain-hub .chain-node b{font-size:18px}.chain-hub>span{margin:0;font-size:9px;max-width:95px}.chain-connectors{height:24px}.clean-chain .chain-lane .chain-node{height:22px;min-height:22px}.clean-chain .chain-lane .chain-node img{width:20px;height:20px;flex-basis:20px}.chain-lane{padding:8px 10px}.chain-lane>p{line-height:14px;margin-bottom:5px}.chain-adjacent{padding:4px 8px;margin-top:7px}.clean-chain{margin-top:8px}.chain-lane.customer .chain-node{margin-bottom:10px}}

@media(min-width:761px){#segments .donut-layout{gap:clamp(50px,6vw,100px);flex-wrap:nowrap;justify-content:flex-start}#segments .donut{flex:0 0 230px}#segments .segment-details{flex:0 1 470px;max-width:470px}#segments .segment-details table{table-layout:fixed;width:100%}#segments .segment-details th,#segments .segment-details td{padding:9px 8px;font-size:13px}#segments .segment-details th:first-child{width:31%}#segments .segment-details th:not(:first-child){width:23%}.chain-adjacent{gap:12px}.chain-adjacent>span{font-size:9px}}@media(max-width:760px){#segments .donut-layout{gap:28px}.chain-adjacent{flex-wrap:wrap}}

/* Aligned company columns and a high-contrast segment palette. */
.clean-chain .chain-lane .chain-node{display:grid;grid-template-columns:22px 98px minmax(0,1fr);column-gap:7px;height:26px;min-height:26px;margin:0;padding:2px 0;align-items:center}.clean-chain .chain-lane .chain-node img{width:22px;height:22px}.clean-chain .chain-lane .chain-node b{font-size:11px;line-height:1.2;letter-spacing:0}.clean-chain .chain-lane .chain-node small{font-size:10px;line-height:1.2;color:#536172;white-space:nowrap;letter-spacing:0}.segment-details tr:nth-child(2) td:first-child,.segment-label:nth-child(2){color:#365c91!important}.segment-details tr:nth-child(2) td:first-child{font-weight:600}
@media(min-width:761px){#segments .segment-details{margin-left:auto;flex:0 1 470px}#segments .donut-layout{justify-content:space-between;gap:50px}.clean-chain .chain-lane.customer .chain-node{margin-bottom:0}}
@media(max-width:760px){.clean-chain .chain-lane .chain-node{grid-template-columns:22px 110px minmax(0,1fr);height:28px;min-height:28px}.clean-chain .chain-lane .chain-node b{font-size:12px}.clean-chain .chain-lane .chain-node small{font-size:11px;white-space:normal}#segments .segment-details{margin-left:0}}

/* Match the institutional portfolio palette; darker text retains contrast. */
#segments .segment-details tr:nth-child(1) td:first-child,#segments .segment-label:nth-child(1){color:#075c53!important}#segments .segment-details tr:nth-child(2) td:first-child,#segments .segment-label:nth-child(2){color:#207f72!important}

#segments .segment-details td:first-child{color:#233d36!important}#segments .segment-key{display:inline-flex;align-items:center;gap:7px;color:#233d36;font-weight:600}#segments .segment-key i{display:inline-block;width:10px;height:10px;flex:0 0 10px;border-radius:2px;background:var(--segment-color);border:1px solid #0000000d}#segments .segment-label{color:#233d36!important}#segments .segment-label>span:before{content:'';display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;background:var(--segment-color)}

#income h3,#eps h3,#buybacks h3,#dividend h3,#phase h3{font-size:21px;letter-spacing:-.5px}:is(#income,#eps,#buybacks,#dividend) .chart-svg{width:100%;max-height:255px;display:block;margin:16px 0 8px}:is(#income,#eps,#buybacks,#dividend) .chart-svg text{font-family:inherit;font-size:11px;fill:#7b8589}:is(#income,#eps,#buybacks,#dividend) .chart-svg text.value{font-size:12px;font-weight:500;fill:#34443e}.metric-row{margin:12px 0 0}.big-metric{font-size:26px!important;font-weight:650}.metric-row>span b{font-size:16px}.toggle button{font-size:11px;padding:6px 10px}.legend{font-size:11px;gap:18px}.source{font-size:11px;line-height:1.65}#income>table,#eps>table,#buybacks>table,#dividend>table{font-size:11px}#income>table td,#eps>table td,#buybacks>table td,#dividend>table td{font-size:11px;padding:8px}#phase .phase-labels span{font-size:12px;line-height:1.5;padding:9px 3px;position:relative}#phase .company-stage{box-shadow:inset 0 0 0 2px #54816c}.stage-ticker{display:block;font-size:10px;letter-spacing:.5px;margin:4px auto 0;color:#fff;background:#54816c;border-radius:4px;width:46px;padding:2px}.phase-company-pill{font-size:11px;background:#edf4e9;color:#365d49;border:1px solid #c2d4c5;padding:5px 9px;border-radius:5px;margin-left:8px}#phase .phase-svg{max-height:270px}#phase .phase-svg path{vector-effect:non-scaling-stroke;stroke-width:1.7}#phase .phase-svg marker path{stroke-width:0}#phase .phase-svg text{font-size:12px}@media(min-width:761px){main>.grid :is(#income,#eps,#buybacks,#dividend) .chart-svg{max-height:255px}}@media(max-width:760px){:is(#income,#eps,#buybacks,#dividend) .chart-svg{min-height:180px}:is(#income,#eps,#buybacks,#dividend) .chart-svg text{font-size:14px}:is(#income,#eps,#buybacks,#dividend) .chart-svg text.value{font-size:14px}#phase .phase-labels{overflow:auto}#phase .phase-labels span{min-width:86px}#phase .phase-svg{min-width:600px}#phase{overflow:auto}}

#phase .company-stage{background:#edf4e9;box-shadow:inset 2px 0 #008653,inset -2px 0 #008653,inset 0 2px #008653;overflow:visible}#phase .stage-ticker{position:absolute;top:-10px;left:50%;transform:translateX(-50%);width:70px;margin:0;background:#008653;border-radius:12px;padding:3px 6px;font-size:10px;white-space:nowrap}#phase .phase-svg{border-bottom:1px solid #e4e9e5}#phase .phase-svg path[marker-end]{stroke-dasharray:3 4;stroke-width:1.6}#phase .phase-svg marker path{stroke-dasharray:none;stroke-width:0}#phase .phase-svg rect[stroke]{stroke:#008653;stroke-width:2}

#phase .legend span:nth-child(3){color:#7928ca;font-weight:600}

#phase .phase-labels{border-left:0;border-right:0}#phase .phase-labels>span{min-width:0;box-sizing:border-box}#phase .phase-plot{position:relative;width:100%}#phase .phase-plot .phase-svg{width:100%;height:auto;max-height:none;display:block}#phase .phase-column-highlight{position:absolute;top:0;bottom:0;left:calc(100% * 4 / 7);width:calc(100% / 7);border:2px solid #008653;border-top:0;box-sizing:border-box;pointer-events:none}#phase .phase-svg text{font-size:17px;font-weight:500}#phase .phase-labels .company-stage{box-shadow:inset 2px 0 #008653,inset -2px 0 #008653,inset 0 2px #008653}@media(max-width:760px){#phase .phase-labels,#phase .phase-plot{min-width:602px}#phase .phase-labels{overflow:visible}#phase .phase-labels span{min-width:0}#phase .phase-plot .phase-svg{min-width:0}}

#phase .legend{display:flex;align-items:center;justify-content:center;gap:18px}#phase .legend>span,#phase .legend>span:nth-child(3){display:inline-flex;align-items:center;gap:6px;color:#69758b;font-weight:400;font-size:11px;line-height:1}#phase .legend>span>i{display:block;flex:0 0 10px;width:10px;height:10px;margin:0;vertical-align:initial}

/* Use the same HTML grid for the highlight fill and both boundaries. */
#phase .phase-column-highlight{background:#edf4e9;z-index:0}#phase .phase-plot .phase-svg{position:relative;z-index:1}#phase .phase-labels .company-stage{background:#edf4e9}

#phase .phase-frame{position:relative;margin-top:14px}#phase .phase-frame .phase-labels{margin-top:0;border-top:1px solid #dfe5ed}#phase .phase-frame .company-stage{box-shadow:none;background:transparent}#phase .phase-frame>.phase-column-highlight{position:absolute;top:0;bottom:0;left:calc(100% * 4 / 7);width:calc(100% / 7);border:2px solid #008653;border-radius:4px;background:#edf4e9;z-index:0}#phase .phase-frame .phase-labels,#phase .phase-frame .phase-plot{position:relative;z-index:1}#phase .phase-labels .company-stage{border-right:0}#phase .phase-labels .company-stage .stage-ticker{z-index:2}#phase .phase-frame .phase-labels>span{background:transparent}#phase .phase-frame{background:#fff}#phase .phase-frame .phase-labels{background:#faf9f3}#phase .phase-frame .phase-labels .company-stage{background:#edf4e9}#phase .phase-frame>.phase-column-highlight{z-index:2;background:transparent;pointer-events:none}#phase .phase-frame .phase-plot{background:linear-gradient(to right,transparent var(--sl,57.142857%),#edf4e9 var(--sl,57.142857%),#edf4e9 var(--sr,71.428571%),transparent var(--sr,71.428571%))}@media(max-width:760px){#phase .phase-frame{min-width:602px}}

.growth-grid{display:block;width:100%;height:auto;margin:0 0 12px;font-family:inherit}.growth-grid text{font-size:12px;fill:#68736d}.growth-grid .growth-label{font-size:11px;fill:#526158}.growth-grid .growth-value{font-weight:600}.growth-grid .positive{fill:#008653}.growth-grid .negative{fill:#c64f52}.growth-grid .neutral{fill:#7d8781}@media(max-width:760px){.growth-grid text{font-size:14px}.growth-grid .growth-label{font-size:12px}}

/* Keep period labels and growth rows on the same rendered SVG scale. */
.financial-chart-area{width:100%;max-width:1040px;margin:0 auto}.financial-chart-area .chart-svg{max-height:none!important;height:auto}.financial-chart-area .growth-grid{width:100%}
#phase .phase-svg path[marker-end]{stroke-width:2.8;stroke-dasharray:9 6}

#map-box{position:relative}.geo-tooltip{position:absolute;z-index:5;pointer-events:none;background:#fff;border:1px solid #dfe5dd;border-radius:8px;box-shadow:0 4px 16px #0002;padding:10px 12px;min-width:145px;font-size:12px;color:#34443e;line-height:1.6}.geo-tooltip[hidden]{display:none}.geo-tooltip strong,.geo-tooltip span{display:block}.geo-tooltip strong{font-size:13px;margin-bottom:3px}.map [data-region],.geo-legend [data-region]{cursor:pointer}.map [data-region]:focus{outline:none}

/* Shared fixed top navigation across every page. */
html{scroll-padding-top:100px}body>.sidebar{position:fixed;inset:0 0 auto;width:100%;height:76px;padding:0 32px;display:flex;flex-direction:row;align-items:center;gap:32px;background:#fbfaf6;border-right:0;border-bottom:1px solid #e4e5de;box-shadow:0 2px 12px #17291d05;z-index:50}body>.sidebar .brand{display:flex;align-items:baseline;gap:4px;flex:none;padding:0;font-size:28px;letter-spacing:-1px;white-space:nowrap}body>.sidebar .brand small{display:inline;font-family:Pretendard,'Apple SD Gothic Neo',sans-serif;font-size:15px;font-weight:600;letter-spacing:-.5px;margin-left:5px}body>.sidebar nav{display:flex;align-items:center;gap:5px;margin:0;min-width:0;flex:1}body>.sidebar nav a{gap:7px;padding:11px 13px;border-radius:7px;font-size:14px;font-weight:500;color:#626f69}body>.sidebar nav a:hover{background:#eef1e8;color:#234d3b}body>.sidebar nav a.active{background:#e8f0e2;color:#006a43;font-weight:700}body>.sidebar nav svg{width:17px;height:17px}body>.sidebar .bottom{margin:0 0 0 auto;display:flex;gap:0;flex:none}body>.sidebar .bottom button{font-size:12px;padding:8px}body>main{margin:76px auto 0;padding:30px;max-width:1600px}@media(max-width:1200px){body>.sidebar{gap:20px;padding:0 20px}body>.sidebar nav a{padding:10px;font-size:13px}body>.sidebar .bottom{display:none}}@media(max-width:900px){html{scroll-padding-top:125px}body>.sidebar{height:112px;flex-wrap:wrap;gap:0;padding:12px 18px 0}body>.sidebar .brand{font-size:24px}body>.sidebar nav{flex-basis:100%;overflow-x:auto;gap:3px;padding:6px 0 10px;scrollbar-width:none}body>.sidebar nav::-webkit-scrollbar{display:none}body>.sidebar nav a{padding:9px 11px;font-size:13px;flex:none}body>main{margin:112px auto 0;padding:22px 16px}}

/* Compact company research panels, October 2026. */
#segments .donut-layout{grid-template-columns:minmax(160px,230px) minmax(0,1fr)!important;max-width:none!important;gap:24px!important;margin:12px 0!important}
#segments .donut-figure{width:230px!important;max-width:100%;justify-self:center}
#segments .segment-revenue-metric .big-metric{margin-top:6px}
#segments .mix-share{display:block;font-size:23px;color:var(--darkgreen);margin:4px 0}
#segments .segment-details th,#segments .segment-details td{padding:12px 10px!important}
#ratios>.source,#geography>.source{display:none!important}
#ratios .ratios{gap:16px;margin-top:20px}
#ratios .ratios>div{border:1px solid #dfe7df!important;background:#f6f9f3;border-radius:12px;padding:18px 12px;text-align:left}
#ratios .ratios label{font-size:14px;line-height:1.6}
#ratios .ratios b{font-size:36px;line-height:1.2;margin:12px 0 4px;font-variant-numeric:tabular-nums}
#geography{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(220px,1fr);gap:16px 28px;align-items:center}
#geography>h3,#geography>.heading{grid-column:1/-1}
#geography .map,#geography .company-region-map svg{margin:0;max-height:330px;width:100%;object-fit:contain}
#geography .geo-legend{display:grid;gap:16px;margin:0;font-size:16px}
#geography .geo-legend>[data-region]{display:grid;grid-template-columns:1fr auto;gap:7px 12px;align-items:center;padding:0;background:none;border:0;text-align:left}
#geography .geo-legend>[data-region]>i{display:none}
#geography .geo-legend strong,#geography .geo-legend b{font-size:28px;font-weight:750;color:#234f3b;font-variant-numeric:tabular-nums}
.region-bar{grid-column:1/-1;display:block;height:7px;background:#edf0eb;border-radius:4px;overflow:hidden}
.region-bar i{display:block;height:100%;border-radius:4px;margin:0}
#valuation-section .analysis-note,#valuation-section>.notice-line,#valuation .notice-line{display:none!important}
#valuation-status .valuation-score{padding:12px 16px;margin-top:10px;display:flex;align-items:center;gap:25px}
#valuation-status .score-heading strong{font-size:17px;white-space:nowrap}
#valuation-status .score-steps{flex:1;margin:0;gap:5px}
#valuation-status .score-steps:before,#valuation-status .score-step b{display:none}
#valuation-status .score-step{padding:8px 3px;border-radius:6px;background:#eeeee7;white-space:nowrap;font-size:12px}
#valuation-status .score-step.current{background:#fae8e6}
#valuation-status .score-step.current.tone-3,#valuation-status .score-step.current.tone-4{background:#e1f1e7}
#valuation .valuation-key{margin-top:0}
.mc-map-crop{overflow:hidden;position:relative}
.mc-map-crop .mc-finviz-map{display:block;margin-top:-2.15%;width:100%;height:auto}
@media(max-width:850px){#segments .donut-layout{grid-template-columns:1fr!important;gap:8px!important}#segments .donut-figure{width:200px!important}#geography{grid-template-columns:1fr}#geography .geo-legend{grid-template-columns:1fr 1fr;gap:16px}#geography .map{max-height:230px}#ratios .ratios{gap:8px}#ratios .ratios>div{padding:12px 8px}#ratios .ratios b{font-size:26px}#ratios .ratios label{font-size:12px}#valuation-status .valuation-score{display:block;padding:10px}#valuation-status .score-heading{margin-bottom:8px}#valuation-status .score-step{font-size:10px}}

/* Compact valuation summary aligned beside current P/E. */
.valuation-inline-row{display:flex;align-items:center;gap:22px;margin:10px 0 14px}.valuation-inline-row #valuation-pe{margin:0;flex-shrink:0;line-height:1.3}.valuation-inline-row #valuation-status{flex:1;min-width:0}.valuation-inline-row #valuation-status .valuation-score{margin:0;padding:7px 9px;gap:12px;display:flex;align-items:center}.valuation-inline-row #valuation-status .score-heading{margin:0}.valuation-inline-row #valuation-status .score-heading strong{font-size:12px}.valuation-inline-row #valuation-status .score-step{font-size:10px;padding:5px 2px}.valuation-inline-row #valuation-status .score-steps{align-items:center}.valuation-inline-row #valuation-status .score-step span{line-height:1.3}
@media(max-width:700px){.valuation-inline-row{gap:10px;align-items:center}.valuation-inline-row #valuation-pe{font-size:24px}.valuation-inline-row #valuation-status .valuation-score{gap:5px;flex-wrap:wrap;padding:5px}.valuation-inline-row #valuation-status .score-heading strong{font-size:10px}.valuation-inline-row #valuation-status .score-steps{flex-basis:100%;gap:2px}.valuation-inline-row #valuation-status .score-step{font-size:8px;white-space:normal;padding:4px 1px}}

/* 데스크톱(761px~)은 처음부터 90% 크기로 보이게. 홈(data-no-zoom)과 모바일은 제외 */
@media(min-width:761px){html:not([data-no-zoom]){zoom:.9}}
/* 위 90% 축소에서 상단 메뉴와 '자세히 +' 버튼은 제외(원래 100% 크기) */
@media(min-width:761px){html:not([data-no-zoom]) body>.sidebar,html:not([data-no-zoom]) .smelt-more,html:not([data-no-zoom]) .inst-more{zoom:1.1111}}
@media(min-width:761px){html:not([data-no-zoom]){--page-header-height:84.5px}}
