/* Study B — Intelligence Report. Editorial, premium: a 3D volume of jobs, the planet, technical panels.
   Surfaces alternate: white (volumes), navy (planet), paper (panels), lime (data coverage). */
.phead { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px 40px; align-items: end; }
.phead .crumbs { grid-column: 1 / 3; margin-bottom: 0; }
.phead h1 { font-size: clamp(40px, 5vw, 84px); }
.phead > p { margin: 0; }
.phead .ruler { grid-column: 1 / 3; }
@media (max-width: 860px) { .phead { grid-template-columns: 1fr; } .phead .crumbs, .phead .ruler { grid-column: 1; } }
.phead h1 .c { color: var(--blue); display: block; }
.ruler { display: flex; flex-wrap: wrap; gap: 6px 22px; margin-top: 18px; padding-top: 12px; border-top: 2px solid var(--ink); font: 400 12.5px var(--mono); color: var(--muted); }
.ruler b { color: var(--ink); font: 900 22px/1 Archivo; font-stretch: 62%; margin-right: 5px; vertical-align: -2px; }
.selbar { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin: 18px 0 14px; }
.selbar button { height: 34px; padding: 0 12px; border-radius: 99px; border: 1px solid var(--line); background: var(--white); font-size: 13.5px; font-weight: 600; }
.selbar button[aria-pressed="true"] { background: var(--ink); border-color: var(--ink); color: #fff; }
.selbar .seg { margin-left: auto; display: inline-flex; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; background: var(--white); }
.selbar .seg button { border: 0; border-radius: 0; height: 34px; }
.top { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: 14px; }
.top > * { min-width: 0; }
.panel { border-radius: 20px; position: relative; overflow: hidden; }
.vol { background: var(--white); border: 1px solid var(--line); height: 560px; }
.vol h2, .globe h2 { position: absolute; z-index: 4; left: 18px; top: 16px; font: 800 20px Archivo; }
.vol .sub, .globe .sub { position: absolute; z-index: 4; left: 18px; top: 44px; font-size: 13px; color: var(--muted); }
.lbl { position: absolute; z-index: 3; left: 0; top: 0; transform: translate(-50%, 0); text-align: center; pointer-events: none; width: 92px; font: 600 11.5px/1.2 Inter; color: var(--ink); transition: color .2s, opacity .2s; }
.lbl b { display: block; font: 900 22px/1 Archivo; font-stretch: 62%; color: var(--blue); }
.lbl.dim { opacity: .35; }
.vol.narrow .lbl { width: 40px; font-size: 0; transform: translate(-50%, -100%); } .vol.narrow .lbl b { font-size: 20px; text-shadow: 0 0 6px #fff, 0 0 2px #fff; }
.tip { position: absolute; z-index: 6; pointer-events: none; background: var(--ink); color: #fff; font-size: 13px; padding: 6px 9px; border-radius: 8px; transform: translate(12px, -110%); white-space: nowrap; opacity: 0; transition: opacity .15s; }
.tip small { display: block; color: #C7CBD8; font-size: 11.5px; }
.bars2d { display: none; position: absolute; inset: 84px 18px 18px; z-index: 4; overflow: auto; }
.flat .vol canvas, .flat .vol .lbl { visibility: hidden; }
.flat .bars2d { display: block; }
.bars2d button { display: grid; grid-template-columns: 170px 1fr 34px; gap: 10px; align-items: center; width: 100%; background: none; border: 0; padding: 6px 4px; border-radius: 8px; text-align: left; font-size: 14px; }
.bars2d button:hover { background: var(--soft); }
.bars2d i { display: block; height: 14px; background: var(--blue); border-radius: 3px; }
.bars2d button[aria-pressed="true"] { background: var(--soft); font-weight: 700; }
.globe { background: var(--navy); color: #fff; height: 560px; }
.globe .sub { color: #C7CBD8; }
.globe .pl { position: absolute; inset: 70px 0 0; }
.ert-ctag { color: #fff; background: rgba(8, 16, 58, .85); padding: 3px 7px 3px 5px; border-radius: 4px; font-size: 11.5px; }
.ert-ctag i { background: var(--lime); }
.ert-ctag b { color: var(--lime); }
.globe .foot2 { position: absolute; z-index: 4; left: 18px; right: 18px; bottom: 14px; font: 400 11.5px var(--mono); color: #AEB6D0; }
.flat .globe .pl { display: none; }
.flat .globe .flatlist { display: block; }
.flatlist { display: none; position: absolute; inset: 76px 18px 40px; overflow: auto; }
.flatlist li { display: flex; justify-content: space-between; padding: 7px 0; border-bottom: 1px solid var(--hair-w); font-size: 14px; }
.grid3 { margin-top: 14px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.card { background: var(--white); border: 1px solid var(--line); border-radius: 20px; padding: 18px; }
.card h2 { font: 800 20px Archivo; margin-bottom: 4px; }
.card .sub { font-size: 13px; color: var(--muted); margin-bottom: 12px; }
.hb { display: grid; grid-template-columns: minmax(0, 1fr) 90px 26px; gap: 10px; align-items: center; padding: 6px 0; font-size: 14px; border-top: 1px solid var(--line); }
.hb a, .hb button { text-decoration: none; background: none; border: 0; padding: 0; text-align: left; font: inherit; color: inherit; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hb a:hover, .hb button:hover { color: var(--blue); }
.hb .bar { height: 10px; background: #E4E2DA; border-radius: 99px; overflow: hidden; }
.hb .bar i { display: block; height: 100%; background: var(--blue); border-radius: 99px; transition: width .5s var(--ease); }
.hb.v .bar i { background: #4F2FE8; }
.hb b { font: 500 12.5px var(--mono); text-align: right; }
.hb button[aria-pressed="true"] { color: #4F2FE8; font-weight: 700; }
.more { font-size: 13px; color: var(--muted); margin-top: 8px; }
.cov { background: var(--lime); border: 0; }
.cov .sub { color: #2A3112; }
.cv { padding: 9px 0; border-top: 1px solid rgba(10, 14, 28, .18); }
.cv .l { display: flex; justify-content: space-between; font-size: 14px; font-weight: 600; }
.cv .l span:last-child { font: 500 12.5px var(--mono); }
.cv .t { margin-top: 6px; height: 8px; border-radius: 99px; background: rgba(10, 14, 28, .14); overflow: hidden; }
.cv .t i { display: block; height: 100%; background: var(--ink); border-radius: 99px; transition: width .5s var(--ease); }
.cv small { display: block; margin-top: 4px; font-size: 12px; color: #2A3112; }
.list { margin-top: 14px; }
.rows { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 18px; }
.rows a { display: grid; grid-template-columns: 34px 1fr auto; gap: 10px; align-items: center; padding: 8px 0; border-top: 1px solid var(--line); text-decoration: none; font-size: 14.5px; }
.rows a:hover b { color: var(--blue); }
.rows svg { width: 30px; height: 30px; color: var(--blue); }
.rows small { color: var(--muted); font: 400 11.5px var(--mono); }
@media (max-width: 1060px) { .top { grid-template-columns: 1fr; } .vol, .globe { height: 460px; } .grid3 { grid-template-columns: 1fr 1fr; } .grid3 .cov { grid-column: 1 / 3; } .rows { grid-template-columns: 1fr 1fr; } }
@media (max-width: 640px) {
  .vol, .globe { height: 400px; border-radius: 16px; }
  .grid3 { grid-template-columns: 1fr; } .grid3 .cov { grid-column: 1; }
  .rows { grid-template-columns: 1fr; }
  .selbar { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
  .selbar button { flex: none; }
  .lbl { width: 60px; font-size: 10px; } .lbl b { font-size: 18px; }
  .bars2d button { grid-template-columns: 120px 1fr 28px; font-size: 13px; }
}
