/* Vendor tokens own the shared palette; specialized chart colors stay local. */
:root{--lb-page-width:1340px;--lb-page-gutter:28px;--lb-section-size:1.125rem;color-scheme:light;--navy:var(--lb-ink);--paper:var(--lb-canvas);--red:var(--lb-red);--green:var(--lb-green);--steel:var(--lb-steel);--line:var(--lb-border);--muted:var(--lb-muted);--surface:var(--lb-surface);--hover:var(--lb-hover);--input-border:var(--lb-input-border);--placeholder:#858994;--grid-line:#cdd1d6;--code:#4d5667;--score-bg:var(--lb-featured);--score-hover:var(--lb-featured-hover);--score-text:#101527;--score-muted:#5c6670;--score-empty-a:#c6cdca;--score-empty-b:#e2e6e4;--score-bar-border:#a6b1ad}
:root[data-theme="dark"]{color-scheme:dark;--placeholder:#a2aaba;--grid-line:#3d4557;--code:#c1c8d5;--score-text:#fff;--score-muted:#c2c7d0;--score-empty-a:#353d50;--score-empty-b:#172036;--score-bar-border:#657080}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--navy);font-family:var(--lb-font-body);-webkit-font-smoothing:antialiased}
button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid var(--navy);outline-offset:3px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}

.topline{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:27px 0;border-bottom:1px solid var(--line)}
.wordmark{white-space:nowrap}
.top-controls{display:flex;align-items:center;gap:9px;width:min(526px,100%)}
.search-wrap{position:relative;flex:1;min-width:0}
#search{width:100%;height:47px;border:1px solid var(--input-border);border-radius:0;padding:0 15px;background:var(--surface);color:var(--navy);font-size:13px;outline:0}
#search:focus{border-color:var(--navy);box-shadow:0 0 0 1px var(--navy)}
#search::placeholder{color:var(--placeholder)}
.theme-toggle{display:grid;place-items:center;flex:none;width:47px;height:47px;border:1px solid var(--input-border);background:var(--surface);color:var(--navy)}
.theme-toggle:hover{background:var(--hover);border-color:var(--navy)}
.theme-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.theme-toggle .moon-icon path{fill:currentColor;stroke:none}
.theme-toggle .moon-icon,:root[data-theme="dark"] .theme-toggle .sun-icon{display:none}
:root[data-theme="dark"] .theme-toggle .moon-icon{display:block}
.search-results{position:absolute;z-index:10;top:51px;left:0;right:0;max-height:min(380px,calc(100dvh - 130px));overflow-y:auto;overscroll-behavior:contain;background:var(--surface);border:1px solid var(--line);box-shadow:0 14px 28px #0003}
.search-results[hidden]{display:none}
.result{display:flex;gap:16px;align-items:center;width:100%;padding:12px 14px;text-align:left;border:0;border-bottom:1px solid var(--line);background:var(--surface);color:var(--navy);font-size:12px}
.result:last-child{border-bottom:0}.result:hover,.result:focus-visible{background:var(--hover)}.result strong{min-width:45px;font-family:var(--lb-font-heading);font-size:11px}.result span{color:var(--muted)}.no-results{margin:0;padding:14px;color:var(--muted);font-size:12px}
.company-heading{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;padding:29px 0 15px}
.company-heading h1{margin:0;font:600 clamp(25px,3vw,39px) var(--lb-font-heading);letter-spacing:-.065em;line-height:1.2}
.company-heading span{color:var(--muted);font-size:11px;letter-spacing:.02em}
.chart-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);margin-bottom:60px}
.chart-card,.score-chart{min-width:0;height:280px;padding:22px 24px 18px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;color:var(--navy);text-align:left}
.chart-card{display:flex;flex-direction:column;width:100%;transition:background var(--lb-duration)}
.chart-card:hover{background:var(--hover)}
.chart-card[data-status="strong"],.detail-chart[data-status="strong"]{--chart-color:var(--green)}
.chart-card[data-status="watch"],.detail-chart[data-status="watch"]{--chart-color:var(--red)}
.chart-card[data-status="review"],.detail-chart[data-status="review"]{--chart-color:var(--steel)}
.chart-card[data-status="no_data"],.detail-chart[data-status="no_data"]{--chart-color:#9ca2a9}
.chart-card[data-status="no-data"],.detail-chart[data-status="no-data"]{--chart-color:#9ca2a9}
.chart-card[data-status="unavailable"],.detail-chart[data-status="unavailable"]{--chart-color:var(--muted)}
.card-top{display:flex;justify-content:space-between;gap:12px;align-items:start;min-height:36px;font:600 13px/1.3 var(--lb-font-heading);letter-spacing:-.025em}
.card-top i{width:8px;height:8px;flex:none;margin-top:4px;background:var(--chart-color,#a2a8ad);border-radius:50%}
.card-top small{color:var(--score-muted);font:400 10px var(--lb-font-body);letter-spacing:0;white-space:nowrap}
.status-label{display:inline-flex;align-items:center;gap:6px;flex:none;color:var(--chart-color);font:500 10px var(--lb-font-body);letter-spacing:0;white-space:nowrap}
.status-label i{margin-top:0}
.card-value{margin-top:10px;font:600 clamp(25px,2.7vw,38px)/1 var(--lb-font-heading);letter-spacing:-.065em}
.chart-visual{height:118px;margin:15px -4px 0;color:var(--chart-color,var(--steel))}
.chart-visual svg,.detail-chart svg{display:block;width:100%;height:100%}
.grid-line{stroke:var(--grid-line);stroke-width:1;stroke-dasharray:2 5}
.year-tick{stroke:var(--grid-line);stroke-width:1}
.trend-line{stroke:currentColor;stroke-width:2.7;fill:none;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}
.chart-visual svg circle,.detail-chart svg circle{fill:var(--paper);stroke:currentColor;stroke-width:2;vector-effect:non-scaling-stroke}
.chart-card:hover .chart-visual svg circle{fill:var(--hover)}
.chart-empty{height:100%;display:grid;place-items:center;color:var(--muted);font-size:12px}
.card-foot{display:flex;justify-content:space-between;gap:10px;margin-top:auto;color:var(--muted);font-size:10px}
.score-chart{display:flex;flex-direction:column;width:100%;background:var(--score-bg);color:var(--score-text);transition:background var(--lb-duration)}
.score-chart:hover{background:var(--score-hover)}
.score-chart .card-top{color:var(--score-text)}
.score-value{margin:10px 0 12px;font:600 clamp(55px,6vw,82px)/1 var(--lb-font-heading);letter-spacing:-.1em}
.score-value small{margin-left:7px;color:var(--score-muted);font:600 17px var(--lb-font-heading);letter-spacing:-.06em}
.score-bars{display:flex;gap:4px;margin:5px 0 11px}
.score-bars i{height:35px;flex:1;border:1px solid var(--score-bar-border)}
.score-bars i.strong{background:var(--green);border-color:var(--green)}
.score-bars i.watch{background:var(--red);border-color:var(--red)}
.score-bars i.review{background:var(--steel);border-color:var(--steel)}
.score-bars i.no_data,.score-bars i.no-data,.score-bars i.unavailable{background:repeating-linear-gradient(45deg,var(--score-empty-a) 0 3px,var(--score-empty-b) 3px 6px)}
.score-legend{display:flex;flex-wrap:wrap;gap:5px 13px;color:var(--score-muted);font-size:10px}
.score-legend span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.score-legend i,.method-check-status i{display:inline-block;width:7px;height:7px;flex:none;border-radius:50%}
.score-legend i.strong,.method-check-status.strong i{background:var(--green)}
.score-legend i.watch,.method-check-status.watch i{background:var(--red)}
.score-legend i.review,.method-check-status.review i{background:var(--steel)}
.score-legend i.unavailable{background:var(--score-muted)}
.score-chart .card-foot{color:var(--score-muted)}
.empty-state{padding:70px 0;color:var(--muted);font-size:14px}
.coverage-note{margin:0 0 16px;padding:13px 16px;border-left:3px solid var(--steel);background:var(--surface);color:var(--muted);font-size:12px;line-height:1.5}
dialog{width:min(900px,calc(100% - 28px));max-height:88vh;border:1px solid var(--navy);padding:36px;background:var(--paper);color:var(--navy);box-shadow:0 30px 90px #0007}
dialog::backdrop{background:#101527bd}
.dialog-close{position:absolute;right:19px;top:15px;width:33px;height:33px;border:0;background:transparent;color:var(--navy);font-size:27px;line-height:1}
#dialog-title{margin:0 38px 5px 0;font:600 clamp(22px,3vw,34px) var(--lb-font-heading);letter-spacing:-.055em}
.method-disclaimer{margin:0 38px 22px 0;padding:3px 0 3px 12px;border-left:3px solid var(--red);color:var(--muted);font-size:12px;line-height:1.55}
.method-disclaimer strong{color:var(--navy);font-weight:600}
.detail-value{font:600 38px var(--lb-font-heading);letter-spacing:-.07em}
.detail-explanation{max-width:760px;margin-top:14px;color:var(--muted);font-size:12px;line-height:1.55}
.detail-explanation p{margin:5px 0}
.detail-explanation strong{color:var(--navy);font-weight:500}
.detail-formula{font-size:11px}
.method-intro{max-width:650px;margin:15px 0 24px;color:var(--muted);font-size:13px;line-height:1.55}
.method-score{display:flex;align-items:center;gap:24px;padding:19px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.method-score strong{white-space:nowrap;font:600 48px/1 var(--lb-font-heading);letter-spacing:-.08em}
.method-score small{margin-left:5px;color:var(--muted);font-size:16px}
.method-score span{color:var(--muted);font-size:12px;line-height:1.65}
.method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 38px;margin:28px 0 36px}
.method-grid h3,.method-list-title{margin:0 0 8px;font:600 13px var(--lb-font-heading);letter-spacing:-.02em}
.method-grid p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.method-list-title{margin-bottom:11px}
.method-list{border-top:1px solid var(--line)}
.method-check{display:grid;grid-template-columns:minmax(0,1fr) 100px 14px;align-items:center;gap:14px;width:100%;min-height:42px;padding:9px 2px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--navy);text-align:left;font-size:12px}
.method-check:hover{background:var(--hover)}
.method-check-status{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:11px}
.method-check-status.unavailable i{background:var(--muted)}
.detail-chart{height:230px;margin-top:22px;color:var(--chart-color,var(--steel))}
.detail-years{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;margin:2px 15px 25px}
.table-wrap{overflow:auto;max-height:38vh}
table{width:100%;min-width:610px;border-collapse:collapse;font-size:12px}
th,td{border-top:1px solid var(--line);padding:12px 9px;text-align:left;vertical-align:top}
th{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
td:nth-child(2){font-weight:500;white-space:nowrap}td div+div{margin-top:5px}
code{font:11px ui-monospace,SFMono-Regular,monospace;color:var(--code)}td a{color:var(--navy);white-space:nowrap}
@media(max-width:900px){.chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){
  :root{--lb-page-gutter:18px}
  .topline{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:15px 9px;padding:18px 0}
  .wordmark{grid-column:1;grid-row:1}
  .topline .top-controls{display:contents}
  .topline .search-wrap{grid-column:1 / -1;grid-row:2}
  .topline .theme-toggle{grid-column:2;grid-row:1;width:44px;height:44px}
  .top-controls{width:100%;margin-top:15px}
  .company-heading{padding:25px 0 14px;gap:7px}
  .company-heading span{width:100%}
  .chart-grid{grid-template-columns:1fr}
  .chart-card,.score-chart{height:280px;padding:20px}
  .card-value{font-size:36px}
  dialog{width:calc(100% - 16px);max-width:calc(100% - 16px);max-height:calc(100dvh - 16px);padding:20px}
  .detail-chart{height:170px}
  .detail-explanation{font-size:12px}
  .method-score{align-items:flex-start;gap:12px}
  .method-score strong{font-size:37px}
  .method-score small{font-size:13px}
  .method-grid{grid-template-columns:1fr;gap:20px;margin:24px 0 30px}
  .method-check{grid-template-columns:minmax(0,1fr) 75px 11px;gap:8px}
  .method-check-status{font-size:10px}
  .table-wrap{max-height:none;overflow:visible}
  table{min-width:0}
  thead{display:none}
  tbody,tr,td{display:block;width:100%}
  tr{border-top:1px solid var(--line);padding:10px 0}
  td{border:0;padding:3px 0;white-space:normal}
  td::before{content:attr(data-label);display:inline-block;width:65px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.05em;vertical-align:top}
  td[data-label="SEC fact"]::before{display:block;width:auto;margin-bottom:4px}
  td[data-label="SEC fact"] div{padding-left:65px;overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){.chart-card,.score-chart{transition:none}}

/* Job data uses the same shell, typography, grid, and detail panels as Stockboy. */
a{color:inherit}select{font:inherit;color:var(--navy);background:var(--surface)}
.card-value small{font:400 11px var(--lb-font-body);letter-spacing:0;color:var(--muted);margin-left:8px}
.demand-visual{height:118px;margin-top:15px;display:flex;align-items:center}.demand-visual svg{width:100%;height:100%}
.share-track{fill:var(--score-bg)}.share-required{fill:var(--steel)}.share-preferred{fill:var(--green)}.share-mentioned{fill:var(--muted)}.axis-label{font:10px var(--lb-font-body);fill:var(--muted)}
.company-bars{margin:15px 0 0;display:grid;gap:9px}.company-bar{display:grid;grid-template-columns:105px 1fr 32px;gap:10px;align-items:center;font:10px var(--lb-font-body)}.company-bar>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.company-bar>span:last-child{text-align:right;color:var(--muted)}.bar-track{height:5px;background:var(--score-bg)}.bar-track i{display:block;height:100%;background:var(--steel)}
.inventory-bars{display:flex;gap:3px;height:35px;margin:24px 0 13px}.inventory-bars i{display:block;min-width:2px}.inventory-legend{display:flex;gap:10px;flex-wrap:wrap;font-size:10px;color:var(--score-muted)}.inventory-legend span{display:flex;gap:5px;align-items:center}.inventory-legend i{height:6px;width:6px;border-radius:50%}
.browse-link{border:0;background:none;padding:0;cursor:pointer}
.heading-actions{margin-left:auto;display:flex;gap:20px}.detail-copy{font-size:12px;line-height:1.65;color:var(--muted);margin:12px 0 20px}.detail-value small{font:400 12px var(--lb-font-body);letter-spacing:0;color:var(--muted)}
.detail-header{display:flex;align-items:baseline;justify-content:space-between;gap:15px;margin:24px 0 12px}.detail-header h3{font:600 13px var(--lb-font-heading);margin:0}.detail-header button{border:0;background:none;padding:0}
.evidence{border-top:1px solid var(--line);padding:16px 0}.evidence h3{font:500 12px var(--lb-font-body);margin:0 0 7px}.evidence p{font-size:11px;line-height:1.7;color:var(--muted);margin:8px 0}.evidence a{font-size:11px}.evidence small{font-size:10px;color:var(--muted)}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.filters input,.filters select{padding:10px;border:1px solid var(--input-border);background:var(--surface);color:var(--navy);font-size:12px;min-width:0}.filters input{flex:1;min-width:180px}.filters select{max-width:100%}
.job-row{display:flex;justify-content:space-between;gap:15px;padding:16px 0;border-top:1px solid var(--line)}.job-title,.list-row{border:0;padding:0;background:none;color:var(--navy);text-align:left;font-size:12px}.job-title{font-weight:500;text-decoration:none}.job-row p{font-size:10px;color:var(--muted);line-height:1.6;margin:7px 0 0}.job-row>a{font-size:11px;white-space:nowrap}.more{display:block;background:none;color:var(--navy);border:1px solid var(--line);padding:10px 20px;margin:20px auto 0;font-size:12px}.list-row{display:grid;grid-template-columns:1fr 75px 60px;gap:15px;padding:13px 0;width:100%;border-top:1px solid var(--line)}.list-row span:nth-child(n+2){text-align:right;font-size:11px;color:var(--muted)}.list-row:hover,.job-title:hover{color:var(--red)}
.status-note{font-size:11px;color:var(--red)}.dialog-summary{font-size:11px;color:var(--muted);margin:12px 0}
@media(max-width:580px){.heading-actions{margin-left:0;width:100%;margin:8px 0 0}.company-bar{grid-template-columns:110px 1fr 32px}.filters select{flex:1}.list-row{grid-template-columns:1fr 65px 45px;gap:8px}}
.theme-toggle svg{pointer-events:none}

.home-intro{display:grid;grid-template-columns:1fr 1fr;gap:50px;max-width:980px;margin:6px 0 30px}.home-intro h2,.ranking-heading h2{font:600 var(--lb-section-size)/1.35 var(--lb-font-heading);letter-spacing:-.02em;margin:0 0 8px}.home-intro p,.ranking-note{font-size:12px;line-height:1.65;color:var(--muted);margin:0}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.summary-grid .chart-card,.summary-grid .score-chart{height:170px}.summary-grid .score-value{margin-top:12px}.rankings{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin:35px 0}.ranking-heading{display:flex;align-items:baseline;justify-content:space-between;gap:15px}.ranking-note{font-size:11px;margin-bottom:12px}.ranking-row,.ranking-labels{grid-template-columns:minmax(0,1fr) 56px 52px;gap:12px}.ranking-row>span:nth-child(2),.ranking-row>span:nth-child(3){text-align:right;color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.ranking-labels{display:grid;color:var(--muted);font-size:10px;text-align:right;padding:0 2px 8px}
@media(max-width:900px){.rankings{gap:30px}.summary-grid .chart-card,.summary-grid .score-chart{padding:20px}.summary-grid .card-foot{font-size:9px;gap:8px;flex-wrap:wrap}}
@media(max-width:580px){.home-intro{grid-template-columns:1fr;gap:18px;margin:5px 0 24px}.summary-grid{grid-template-columns:1fr}.summary-grid .chart-card,.summary-grid .score-chart{height:155px}.rankings{grid-template-columns:1fr;gap:30px;margin:30px 0}.ranking-row{gap:8px}.ranking-note{max-width:310px}}

.summary-grid{margin-bottom:0}.summary-grid .score-value{font-size:42px;letter-spacing:-.065em;margin:10px 0 0}

.skill-trends{margin:35px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0 15px}.trend-controls{display:flex;gap:10px}.trend-controls select{max-width:230px;min-width:0;border:1px solid var(--input-border);padding:8px;background:var(--paper);font-size:11px}.trend-reading{display:flex;align-items:baseline;gap:14px;margin:18px 0 0}.trend-reading strong{font:600 28px var(--lb-font-heading);letter-spacing:-.05em}.trend-reading span{font-size:11px;color:var(--muted)}.trend-reading button{margin-left:auto}.history-visual{height:210px;color:var(--steel);margin:12px 0}.history-visual svg{display:block;width:100%;height:100%}.history-visual circle{fill:var(--paper);stroke:currentColor;stroke-width:2}.history-visual .axis-label{font-size:10px}
@media(max-width:580px){.skill-trends>.ranking-heading{display:block}.trend-controls{margin:14px 0}.trend-controls select:first-child{flex:1;max-width:calc(100% - 95px)}.trend-reading{flex-wrap:wrap;gap:8px}.trend-reading button{margin-left:0}.history-visual{height:170px}}

.trend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);margin:18px 0}.trend-tile{padding:18px 16px 6px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0}.trend-tile h3{font:600 12px var(--lb-font-heading);letter-spacing:-.02em;margin:0}.trend-tile .trend-reading{margin-top:12px;display:block}.trend-tile .trend-reading strong{font-size:25px}.trend-tile .trend-reading span{display:block;font-size:10px;margin-top:7px}.trend-tile .history-visual{height:135px;margin:8px 0}.history-context{font-size:11px;color:var(--muted);line-height:1.6;margin:8px 0 0}.secondary-rankings{border-top:1px solid var(--line);padding-top:28px}.trend-tile .axis-label{font-size:12px}
@media(max-width:900px){.trend-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.trend-grid{grid-template-columns:1fr}.trend-tile .history-visual{height:150px}}

.trend-tile .axis-label{font-size:16px}

.recent-roles{margin:35px 0}.recent-role{text-decoration:none;grid-template-columns:minmax(0,1fr) 100px;padding:12px 2px}.recent-role-info{display:grid;gap:5px;min-width:0}.recent-role-title{font-weight:500;line-height:1.5}.recent-role-meta{color:var(--muted);font-size:10px;line-height:1.6}.recent-role time{color:var(--muted);font-size:11px;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:580px){.recent-role{grid-template-columns:minmax(0,1fr) 85px;gap:8px}.recent-role-title,.recent-role-meta{overflow-wrap:anywhere}.recent-role time{font-size:10px}}

.top-locations{min-width:0}.location-chart{display:grid;gap:15px;margin:22px 0}.location-bar{display:grid;grid-template-columns:105px minmax(0,1fr) 45px;align-items:center;gap:12px;width:100%;border:0;padding:4px 0;background:none;color:var(--navy);font:400 12px var(--lb-font-body);text-align:left}.location-track{height:16px;background:var(--score-bg)}.location-track>span{display:block;height:100%;background:var(--steel)}.location-share{text-align:right;font-variant-numeric:tabular-nums}.location-count{display:none;color:var(--muted);text-align:right;font-size:10px}.location-bar:hover,.location-bar:focus-visible{color:var(--red)}.location-bar:hover .location-track>span,.location-bar:focus-visible .location-track>span{background:var(--red)}.location-note{font-size:10px;line-height:1.6;color:var(--muted)}
@media(max-width:580px){.location-bar{grid-template-columns:100px minmax(0,1fr) 42px;gap:10px;font-size:11px}.location-count{display:none}.location-track{height:13px}}

:root{--pie-0:var(--lb-category-1);--pie-1:var(--lb-category-2);--pie-2:var(--lb-category-3);--pie-3:var(--lb-category-4);--pie-4:var(--lb-category-5);--pie-5:var(--lb-category-6);--pie-6:var(--lb-category-7);--pie-7:var(--lb-category-8);--pie-8:var(--lb-category-9);--pie-9:var(--lb-category-10)}
.language-ranking{min-width:0}.language-chart{display:grid;grid-template-columns:minmax(130px,1fr) minmax(125px,1fr);align-items:center;gap:22px;margin-top:24px}.language-pie{width:100%;max-width:270px;justify-self:center;overflow:visible}.pie-slice{fill:var(--slice);stroke:var(--paper);stroke-width:1.5;cursor:pointer}.pie-slice:hover,.pie-slice:focus-visible,.pie-slice.is-highlighted{fill:var(--red);outline:none}.language-key{display:grid;grid-template-columns:8px 1fr auto;gap:9px;align-items:center;width:100%;padding:10px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;color:var(--navy);font-size:11px}.language-key>span:last-child{color:var(--muted);font-variant-numeric:tabular-nums}.language-swatch{height:8px;width:8px;background:var(--slice)}.language-key:hover,.language-key:focus-visible,.language-key.is-highlighted,.language-key.is-highlighted>span:last-child{color:var(--red)}.language-key:hover .language-swatch,.language-key.is-highlighted .language-swatch{background:var(--red)}
@media(max-width:900px){.language-chart{grid-template-columns:1fr}.language-pie{max-width:210px}}
@media(max-width:580px){.language-ranking{grid-column:auto;grid-row:auto}.language-chart{grid-template-columns:minmax(110px,1fr) minmax(120px,1fr);gap:16px}}

/* Shared text-link treatment; whole-card interactions retain their surface hover. */

.link-arrow,.company-heading .link-arrow{display:inline-block;width:auto;color:var(--red);font-size:.85em;line-height:1;white-space:nowrap}

.heading-actions[hidden]{display:none}
.menu-toggle{display:none;place-items:center;border:1px solid var(--input-border);background:var(--surface);color:var(--navy);padding:0}
.menu-toggle:hover{background:var(--hover);border-color:var(--navy)}
.menu-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
@media(max-width:580px){
 .topline{grid-template-columns:minmax(0,1fr) 44px 44px}
 .topline .menu-toggle{display:grid;grid-column:2;grid-row:1;width:44px;height:44px}
 .topline .theme-toggle{grid-column:3}
 .topline .heading-actions{grid-column:1 / -1;grid-row:3;display:grid;gap:0;margin:0;width:100%;border-top:1px solid var(--line)}
 .topline .heading-actions[hidden]{display:none}
 .topline .heading-actions button{min-height:44px;padding:12px 4px;text-align:left;font-size:14px;border-bottom:1px solid var(--line)}
}

/* Home wordmarks retain their brand colors in every interaction state. */
a.wordmark:is(:hover,:focus-visible,:active){color:var(--navy);background:transparent;text-decoration:none}
a.wordmark:focus-visible{outline-color:var(--navy)}

/* Keep the dashboard's dense data layout while sharing brand primitives. */
.filters .lb-input{width:auto;min-height:44px}
.filters input,.filters select{font-size:var(--lb-text-control);min-height:44px}
.dialog-close{min-width:44px;min-height:44px}
