/* Radiografia participării: explorer */
.rx-head { padding-top: clamp(1.5rem, 3vw, 2.5rem); }
.rx-title { display: flex; justify-content: space-between; align-items: flex-end; gap: 1rem 2.5rem; flex-wrap: wrap; }
.rx-title h1 { font-size: clamp(2.2rem, 3vw + 1rem, 3.6rem); margin: 0; }
.rx-sub { margin: .5rem 0 0; font: 700 clamp(1.15rem, 1vw + .8rem, 1.6rem)/1.25 var(--display); color: var(--teal-d); letter-spacing: -0.015em; }
.rx-cover { position: relative; margin: 1.75rem 0 0; }
.rx-cover img { width: 100%; aspect-ratio: 21 / 8; object-fit: cover; border-radius: var(--r-xl); box-shadow: var(--shadow); }
.rx-cover figcaption { position: absolute; left: 1.5rem; bottom: 1.5rem; padding: .85rem 1.4rem; font: 600 clamp(1.05rem, 1vw + .7rem, 1.5rem)/1.2 var(--display); border-radius: 18px; }
@media (max-width: 700px) { .rx-cover img { aspect-ratio: 16 / 10; } .rx-cover figcaption { left: .75rem; bottom: .75rem; } }
.rx-title .lead { margin: .9rem 0 0; }
.rx-closed { display: flex; gap: .6rem; align-items: flex-start; margin: 0 0 .4rem; max-width: 26ch; color: var(--muted); font-size: .92rem; line-height: 1.35; }
.rx-closed svg { width: 1.1rem; height: 1.1rem; color: var(--stamp); flex: none; margin-top: .1rem; }
.rx-closed b { color: var(--ink); }

.rx-tabs { display: flex; gap: .55rem; overflow-x: auto; margin-top: 1.75rem; padding-bottom: .5rem; scrollbar-width: thin; }
.rx-tabs button { appearance: none; border: 0; background: var(--mint); padding: .8rem 1.35rem; border-radius: 16px; font: 500 1rem/1 var(--body); color: var(--ink); cursor: pointer; white-space: nowrap; }
.rx-tabs button:hover { background: var(--mint-2); }
.rx-tabs button[aria-selected="true"] { background: var(--teal-d); color: #fff; font-weight: 600; }

.rx-selbar { position: sticky; top: 5.75rem; z-index: 30; background: rgba(255, 255, 255, .9); backdrop-filter: blur(12px); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); margin-top: 1rem; }
.rx-selbar .wrap { display: flex; align-items: center; gap: .6rem 1rem; flex-wrap: wrap; padding-top: .7rem; padding-bottom: .7rem; }
.rx-sel { margin: 0; font-weight: 700; color: var(--ink); }
.rx-sel .muted { font-weight: 400; }
.rx-chips { display: flex; gap: .35rem; flex-wrap: wrap; }
.rx-chip { display: inline-flex; align-items: center; gap: .35rem; background: var(--mint); border-radius: 999px; padding: .3rem .35rem .3rem .8rem; font-size: .88rem; color: var(--ink); }
.rx-chip button { border: 0; background: #fff; width: 1.45rem; height: 1.45rem; border-radius: 50%; cursor: pointer; display: grid; place-items: center; color: var(--muted); }
.rx-chip button:hover { color: var(--ink); background: var(--line); }
.rx-chip svg { width: .8rem; height: .8rem; }
.rx-sel-actions { margin-left: auto; display: flex; gap: .5rem; flex-wrap: wrap; }
.rx-filter-toggle { display: none; }

.rx-body { display: grid; grid-template-columns: 290px minmax(0, 1fr); gap: 1.75rem; padding-top: 1.75rem; padding-bottom: 2rem; align-items: start; }

.rx-body.no-filters { grid-template-columns: minmax(0, 1fr); }
.rx-filters { position: sticky; top: 10.5rem; max-height: calc(100vh - 12rem); overflow: auto; padding: 1.25rem; background: var(--mint); border-radius: var(--r-lg); }
.rx-filters-head { display: flex; justify-content: space-between; align-items: center; }
.rx-filters-head h2 { font-size: 1.3rem; margin: 0; }
.rx-close { display: none; }
.rx-filters fieldset { border: 0; border-top: 1px solid var(--line-strong); margin: 0; padding: 1rem 0 .75rem; }
.rx-filters legend { font: 700 1rem/1.2 var(--body); color: var(--ink); padding: 0; margin-bottom: .6rem; }
.rx-filters label.f { display: block; font-size: .88rem; color: var(--muted); margin-bottom: .6rem; }
.rx-filters select, .rx-map-controls select, .rx-compare-pick select, .rx-voice-filters select, .rx-voice-filters input, .rx-voice-head select {
  display: block; width: 100%; margin-top: .3rem; font: 400 .98rem/1.3 var(--body); color: var(--ink);
  padding: .65rem .8rem; border: 1px solid var(--line-strong); border-radius: 12px; background: #fff;
}
.rx-filters select[multiple] { min-height: 7.5rem; }
.rx-opts { display: flex; flex-wrap: wrap; gap: .35rem; }
.rx-opt { position: relative; }
.rx-opt input { position: absolute; opacity: 0; inset: 0; cursor: pointer; }
.rx-opt span { display: inline-block; padding: .4rem .75rem; border: 1px solid transparent; border-radius: 999px; font-size: .88rem; background: #fff; color: var(--ink); cursor: pointer; }
.rx-opt input:checked + span { background: var(--teal-d); color: #fff; font-weight: 600; }
.rx-opt input:focus-visible + span { outline: 3px solid var(--stamp); outline-offset: 2px; }
.rx-tri { display: grid; grid-template-columns: 1fr auto; gap: .4rem; align-items: center; font-size: .92rem; margin-bottom: .45rem; }
.rx-tri select { width: auto; margin: 0; padding: .3rem .4rem; font-size: .88rem; }
.rx-sensitive { font-size: .8rem; color: var(--muted); display: flex; gap: .35rem; align-items: center; margin: -.2rem 0 .6rem; }
.rx-sensitive svg { width: .85rem; height: .85rem; color: var(--stamp); }

@media (max-width: 1000px) {
  .rx-body { grid-template-columns: 1fr; }
  .rx-filter-toggle { display: inline-flex; }
  .rx-filters { position: fixed; inset: 0 auto 0 0; width: min(92vw, 360px); max-height: none; background: var(--surface); z-index: 60; padding: 1.25rem; transform: translateX(-105%); visibility: hidden; transition: transform .2s ease, visibility 0s linear .2s; }
  .rx-filters.open { transform: none; visibility: visible; box-shadow: 0 0 0 100vmax rgba(25, 27, 77, .35); transition: transform .2s ease; }
  .rx-close { display: inline-flex; }
  .rx-selbar { top: 4.5rem; }
}
@media (prefers-reduced-motion: reduce) { .rx-filters { transition: none; } }

.rx-panel { min-width: 0; }
.rx-panel:focus { outline: none; }

/* stat tiles */
.rx-stats { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 0; background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-lg); margin-bottom: 1.25rem; box-shadow: var(--shadow); }
.rx-stat { padding: 1.1rem 1.2rem; border-left: 1px solid var(--line); }
.rx-stat:first-child { border-left: 0; }
.rx-stat .lbl { font-size: .88rem; color: var(--muted); line-height: 1.3; min-height: 2.3em; }
.rx-stat .val { font: 700 2.1rem/1.1 var(--display); color: var(--teal); margin-top: .35rem; letter-spacing: -0.03em; }
.rx-stat .val small { font-size: .5em; color: var(--muted); font-weight: 700; }
.rx-stat .delta { font-size: .85rem; margin-top: .2rem; color: var(--muted); }
.rx-stat .delta.pos { color: #006300; }
.rx-stat .delta.neg { color: #b02a2a; }
@media (max-width: 900px) { .rx-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); } .rx-stat:nth-child(odd) { border-left: 0; } .rx-stat { border-top: 1px solid var(--line); } .rx-stat:nth-child(-n+2) { border-top: 0; } }

/* chart cards */
.rx-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.rx-grid .span-2 { grid-column: 1 / -1; }
@media (max-width: 900px) { .rx-grid { grid-template-columns: 1fr; } }
.viz { margin: 0; background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 1.35rem 1.5rem 1.1rem; min-width: 0; box-shadow: var(--shadow); }
.viz-head { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-start; margin-bottom: 1rem; }
.viz-head h3 { margin: 0; font-size: 1.2rem; }
.viz-head h3::after { content: ""; display: block; width: 74px; height: 4px; margin-top: .5rem; border-radius: 4px; background: linear-gradient(90deg, var(--mag) 0 30%, transparent 30% 35%, var(--orange) 35% 65%, transparent 65% 70%, var(--blue) 70%); }
.viz-head p { margin: .3rem 0 0; font-size: .9rem; color: var(--muted); }
.viz-tools { display: flex; gap: .25rem; flex: none; }
.viz-tools button { border: 0; background: var(--mint); border-radius: 10px; width: 2.2rem; height: 2.2rem; display: grid; place-items: center; cursor: pointer; color: var(--ink); }
.viz-tools button:hover, .viz-tools button[aria-pressed="true"] { background: var(--teal-d); color: #fff; }
.viz-tools svg { width: 1rem; height: 1rem; }
.viz-foot { margin-top: .75rem; font-size: .82rem; color: var(--muted); display: flex; gap: 1rem; flex-wrap: wrap; }
.viz-legend { display: flex; flex-wrap: wrap; gap: .4rem 1rem; font-size: .85rem; color: var(--muted); margin: 0 0 .9rem; padding: 0; list-style: none; }
.viz-legend li { display: inline-flex; align-items: center; gap: .4rem; }
.viz-legend .sw { width: .8rem; height: .8rem; border-radius: 3px; display: inline-block; }
.viz-legend .tick { width: 2px; height: .9rem; background: var(--ink); display: inline-block; }
.viz table { width: 100%; border-collapse: collapse; font-size: .9rem; }
.viz th, .viz td { padding: .45rem .5rem; border-bottom: 1px solid var(--line); text-align: left; }
.viz td.r, .viz th.r { text-align: right; font-variant-numeric: tabular-nums; }
.viz thead th { color: var(--muted); font-weight: 700; font-size: .82rem; }

/* horizontal bars */
.hb { display: grid; gap: .55rem; }
.hb-row { display: grid; grid-template-columns: minmax(0, 15rem) minmax(0, 1fr) 3.4rem; gap: .75rem; align-items: center; outline: none; border-radius: 6px; }
.hb-row:focus-visible { outline: 3px solid var(--stamp); outline-offset: 2px; }
.hb-label { font-size: .92rem; line-height: 1.25; color: var(--text); }
.hb-track { position: relative; height: 22px; background: linear-gradient(#eef0f5, #eef0f5) 0 9px / 100% 4px no-repeat; border-radius: 2px; }
.hb-fill { position: absolute; left: 0; top: 4px; height: 14px; background: var(--s1); border-radius: 0 4px 4px 0; min-width: 2px; }
.hb-fill.b { background: var(--s2); }
.hb-ref { position: absolute; top: 0; bottom: 0; width: 2px; background: var(--ink); border-radius: 1px; }
.hb-val { font-size: .92rem; font-variant-numeric: tabular-nums; text-align: right; color: var(--ink); font-weight: 700; }
.hb-row.dim .hb-fill { background: #bcd6d2; }
.hb-row.hl .hb-fill { background: var(--s1); }
.hb-row.eu .hb-fill { background: var(--ink); }
@media (max-width: 560px) { .hb-row { grid-template-columns: minmax(0, 1fr) 3rem; } .hb-label { grid-column: 1 / -1; } }

/* paired bars (compare) */
.hb-pair { display: grid; gap: 3px; }
.hb-pair .hb-track { height: 14px; }
.hb-pair .hb-fill { top: 2px; height: 10px; }

/* funnel steps */
.steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.step { display: grid; gap: .5rem; align-content: start; }
.step .pct { font: 700 1.9rem/1 var(--body); color: var(--ink); }
.step .pct small { font-size: .5em; color: var(--muted); }
.step .col { height: 120px; display: flex; align-items: flex-end; gap: 6px; border-bottom: 1px solid var(--line-strong); }
.step .col span { display: block; width: 36px; background: var(--s1); border-radius: 4px 4px 0 0; }
.step .col span.ref { background: var(--ref); }
.step .txt { font-size: .9rem; line-height: 1.3; color: var(--text); }
.step .ref-txt { font-size: .8rem; color: var(--muted); }
@media (max-width: 700px) { .steps { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* segmented ladder */
.seg { display: flex; height: 28px; gap: 2px; border-radius: 6px; overflow: hidden; }
.seg span { display: flex; align-items: center; padding-left: .45rem; font: 700 .82rem/1 var(--body); color: #fff; min-width: 0; white-space: nowrap; overflow: visible; }
.seg span:first-child { border-radius: 4px 0 0 4px; }
.seg span:last-child { border-radius: 0 4px 4px 0; }
.seg span.dark-text { color: #0b0b0b; }
.seg-legend { list-style: none; margin: .9rem 0 0; padding: 0; display: grid; gap: .4rem; font-size: .9rem; }
.seg-legend li { display: grid; grid-template-columns: .85rem 1fr auto; gap: .55rem; align-items: center; }
.seg-legend .sw { width: .85rem; height: .85rem; border-radius: 3px; }
.seg-legend .v { font-variant-numeric: tabular-nums; font-weight: 700; color: var(--ink); }
.seg-legend .v small { color: var(--muted); font-weight: 400; margin-left: .35rem; }
.seg-compare { display: grid; gap: .5rem; }
.seg-compare .seg-row { display: grid; grid-template-columns: 4.5rem 1fr; gap: .6rem; align-items: center; font-size: .85rem; color: var(--muted); }

/* hero on "pe scurt" */
.rx-hero-unused { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); gap: 2rem; align-items: center; margin-bottom: 2rem; }
.rx-hero-num .big { display: block; font: 800 clamp(4rem, 8vw, 7rem)/0.9 var(--display); font-stretch: 108%; color: var(--ink); letter-spacing: -0.03em; }
.rx-hero-num .lbl { display: block; font: 700 1.25rem/1.3 var(--display); font-stretch: 104%; color: var(--ink); margin-top: .6rem; max-width: 24ch; }
.rx-hero-text p { font-size: 1.1rem; }
@media (max-width: 800px) { .rx-hero { grid-template-columns: 1fr; } }
.rx-lenses { margin-top: 2.5rem; }
.rx-lens-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.rx-lens-grid article { background: var(--mint); border-radius: var(--r-lg); padding: 1.4rem; }
.rx-lens-grid h3 { font-size: 1.08rem; }
.rx-lens-grid p { color: var(--muted); font-size: .97rem; }
@media (max-width: 900px) { .rx-lens-grid { grid-template-columns: 1fr; } }

/* map */
.rx-map-controls { display: flex; gap: 1rem 2rem; align-items: flex-end; flex-wrap: wrap; margin-bottom: 1rem; }
.rx-map-controls label { font-size: .9rem; color: var(--muted); }
.rx-map-controls select { min-width: 300px; }
.rx-check { display: flex !important; gap: .5rem; align-items: center; color: var(--text) !important; }
.rx-check input { width: 1.1rem; height: 1.1rem; accent-color: var(--ink); }
.rx-map-layout { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 1.25rem; align-items: start; }
@media (max-width: 1280px) { .rx-map-layout { grid-template-columns: 1fr; } .rx-rank { columns: 2 220px; display: block; max-height: none; } .rx-rank li { break-inside: avoid; } }
.rx-map svg { width: 100%; height: auto; }
.rx-map .county { stroke: #fff; stroke-width: 1.2; cursor: pointer; transition: opacity .1s; }
.rx-map .county:hover, .rx-map .county:focus { stroke: var(--ink); stroke-width: 2.2; outline: none; }
.rx-map .county.sel { stroke: var(--mag); stroke-width: 3; }
.rx-map .county.na { fill: url(#hatch); }
.rx-map .loc { fill: #fff; stroke: var(--ink); stroke-width: 1.5; cursor: pointer; }
.rx-map .loc:hover, .rx-map .loc:focus { fill: var(--mag); outline: none; }
.rx-map-legend { display: flex; align-items: flex-end; gap: .75rem 1.5rem; flex-wrap: wrap; font-size: .85rem; color: var(--muted); margin-top: .75rem; }
.lg-scale { display: grid; gap: .3rem; }
.lg-title { color: var(--text); font-weight: 700; }
.lg-item { display: inline-flex; align-items: center; gap: .45rem; }
.lg-hatch { width: 14px; height: 14px; border-radius: 3px; background: repeating-linear-gradient(45deg, #eef0f5 0 3px, #c4c8d8 3px 5px); }
.lg-dot { width: 11px; height: 11px; border-radius: 50%; border: 1.5px solid var(--ink); background: #fff; }
.rx-map-legend .bins { display: flex; gap: 2px; }
.rx-map-legend .bins span { display: block; width: 44px; height: 12px; }
.rx-map-legend .bins span:first-child { border-radius: 3px 0 0 3px; }
.rx-map-legend .bins span:last-child { border-radius: 0 3px 3px 0; }
.rx-map-legend .ends { display: flex; justify-content: space-between; width: 228px; font-variant-numeric: tabular-nums; }
.rx-map-side { background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 1.25rem; font-size: .95rem; }
.rx-map-side h3 { margin-bottom: .25rem; }
.rx-map-side dl { display: grid; grid-template-columns: 1fr auto; gap: .35rem 1rem; margin: 1rem 0; }
.rx-map-side dt { color: var(--muted); }
.rx-map-side dd { margin: 0; text-align: right; font-weight: 700; color: var(--ink); font-variant-numeric: tabular-nums; }
.rx-map-side ol { padding-left: 1.2rem; margin: .3rem 0 1rem; }
.rx-rank { list-style: none; padding: 0; margin: .5rem 0 0; display: grid; gap: .1rem; font-size: .9rem; max-height: 440px; overflow: auto; }
.rx-rank li button { width: 100%; display: grid; grid-template-columns: 1.6rem 1fr auto; gap: .5rem; border: 0; background: none; padding: .35rem .3rem; border-radius: 6px; text-align: left; cursor: pointer; font: inherit; color: var(--text); }
.rx-rank li button:hover { background: var(--paper); }
.rx-rank .k { color: var(--faint); font-variant-numeric: tabular-nums; }
.rx-rank .v { font-weight: 700; color: var(--ink); font-variant-numeric: tabular-nums; }

/* compare */
.rx-compare-pick { display: flex; gap: .75rem 1.25rem; align-items: flex-end; flex-wrap: wrap; margin-bottom: .75rem; }
.rx-compare-pick label { font-size: .9rem; color: var(--muted); display: grid; grid-template-columns: auto 1fr; gap: .25rem .5rem; align-items: center; }
.rx-compare-pick select { grid-column: 1 / -1; min-width: 260px; }
.key { width: .9rem; height: .9rem; border-radius: 3px; display: inline-block; }
.key.a { background: var(--s1); }
.key.b { background: var(--s2); }
.dumb { display: grid; gap: .9rem; }
.dumb-row { display: grid; grid-template-columns: minmax(0, 14rem) minmax(0, 1fr) 7rem; gap: .9rem; align-items: center; }
.dumb-row .lbl { font-size: .92rem; }
.dumb-track { position: relative; height: 24px; border-bottom: 1px solid var(--line); }
.dumb-line { position: absolute; top: 11px; height: 2px; background: var(--line-strong); }
.dumb-dot { position: absolute; top: 4px; width: 16px; height: 16px; border-radius: 50%; border: 2px solid var(--surface); transform: translateX(-50%); }
.dumb-dot.a { background: var(--s1); }
.dumb-dot.b { background: var(--s2); }
.dumb-row .vals { font-size: .88rem; text-align: right; font-variant-numeric: tabular-nums; color: var(--muted); }
.dumb-row .vals b { color: var(--ink); }
@media (max-width: 640px) { .dumb-row { grid-template-columns: 1fr; gap: .25rem; } .dumb-row .vals { text-align: left; } }

/* voices */
.rx-voice-head { display: flex; justify-content: space-between; gap: 1rem 2rem; align-items: flex-end; flex-wrap: wrap; margin-bottom: 1.25rem; }
.rx-voice-head h2 { margin: 0 0 .4rem; }
.rx-voice-head p { margin: 0; }
.rx-voice-head label { font-size: .9rem; color: var(--muted); min-width: 320px; }
.rx-voice-filters { display: flex; gap: .75rem; flex-wrap: wrap; margin-bottom: 1rem; }
.rx-voice-filters label { font-size: .88rem; color: var(--muted); min-width: 150px; }
.rx-voice-filters .grow { flex: 1; min-width: 220px; }
.rx-voices { columns: 3 300px; column-gap: 1.25rem; }
.voice { break-inside: avoid; margin: 0 0 1.25rem; background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-md); padding: 1.15rem 1.3rem; box-shadow: var(--shadow); }
.voice.k-schimbare { border-top: 4px solid var(--mag); }
.voice.k-experienta { border-top: 4px solid var(--turq); }
.voice blockquote { margin: 0; font-size: 1.02rem; line-height: 1.5; color: var(--text); }
.voice figcaption { margin-top: .7rem; font-size: .82rem; color: var(--muted); }
.voice mark { background: var(--stamp-wash); color: inherit; padding: 0 .1em; border-radius: 3px; }

/* drawer (AI) */
.rx-drawer { position: fixed; inset: 0; z-index: 80; background: rgba(25, 27, 77, .35); display: flex; justify-content: flex-end; }
.rx-drawer[hidden] { display: none; }
.rx-drawer-panel { width: min(100%, 480px); height: 100%; background: var(--surface); padding: 1.5rem; display: flex; flex-direction: column; gap: .75rem; overflow: auto; }
.rx-drawer-head { display: flex; justify-content: space-between; align-items: center; }
.rx-drawer-head h2 { margin: 0; font-size: 1.5rem; }
.rx-ai-log { display: grid; gap: .75rem; flex: 1; align-content: start; }
.rx-ai-log .q { justify-self: end; background: var(--ink); color: #fff; border-radius: 14px 14px 4px 14px; padding: .6rem .9rem; max-width: 85%; }
.rx-ai-log .a { background: var(--paper); border-radius: 14px 14px 14px 4px; padding: .8rem 1rem; white-space: pre-wrap; }
.rx-ai-log .a.err { background: #fdecec; color: #8a1f1f; }
.rx-ai-suggest { display: flex; flex-wrap: wrap; gap: .4rem; }
.rx-ai-suggest .chip { font-weight: 400; text-align: left; line-height: 1.3; }
.rx-ai-form { display: grid; gap: .5rem; }
.rx-ai-form textarea { font: 400 1rem/1.4 var(--body); padding: .7rem; border: 1px solid var(--line-strong); border-radius: 10px; resize: vertical; }

.rx-downloads { display: flex; gap: .6rem; flex-wrap: wrap; margin-top: 1.5rem; }
.rx-tooltip { position: fixed; z-index: 90; pointer-events: none; background: var(--ink); color: #fff; font-size: .86rem; line-height: 1.35; padding: .5rem .7rem; border-radius: 8px; max-width: 260px; box-shadow: 0 4px 16px rgba(25, 27, 77, .25); }
.rx-tooltip b { display: block; }

.rx-method .prose { max-width: 75ch; }
.rx-defs dt { font-weight: 700; color: var(--ink); margin-top: 1rem; }
.rx-defs dd { margin: .25rem 0 0; color: var(--text); }
.rx-cite { background: var(--surface); border-left: 4px solid var(--stamp); padding: .9rem 1.1rem; border-radius: 0 var(--r-md) var(--r-md) 0; font-size: 1rem; }

.loading { opacity: .55; transition: opacity .15s; }

@media print {
  .rx-tabs, .rx-selbar, .rx-filters, .rx-downloads, .viz-tools, .rx-drawer { display: none !important; }
  .rx-body { display: block; }
  .viz { break-inside: avoid; border-color: #ccc; }
  .rx-grid { grid-template-columns: 1fr 1fr; }
}

/* data numerals in Archivo (Atkinson's slashed zero is kept for running text) */
.rx-stat .val, .step .pct, .hb-val, .seg span, .seg-legend .v, .rx-rank .v, .rx-map-side dd, .dumb-row .vals b, .rx-map-legend .ends { font-family: var(--display); font-stretch: 100%; }

/* bars adapt to the card, not the viewport */
.viz { container-type: inline-size; }
@container (max-width: 560px) {
  .hb { gap: .7rem; }
  .hb-row { grid-template-columns: minmax(0, 1fr) 3.2rem; gap: .15rem .6rem; }
  .hb-label { grid-column: 1 / -1; }
  .hb-row .hb-track { grid-column: 1; }
  .dumb-row { grid-template-columns: 1fr; gap: .25rem; }
  .dumb-row .vals { text-align: left; }
}
body[data-page="radiografie"] .wrap { max-width: 1320px; }
.step .col { height: 96px; }

:root { --ref: #bcd6d2; }
.rx-head .dashes { margin-top: .9rem; }
.rx-closed svg { color: var(--teal-d); }
.rx-lenses h2 { margin-bottom: 1.25rem; }
/* vertical bars (funnel) */
.vb { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: .5rem; height: 300px; padding: 1.4rem 0 2.6rem; }
.vb-axis { position: relative; }
.vb-axis span { position: absolute; right: 0; transform: translateY(50%); font-size: .82rem; color: var(--muted); font-family: var(--display); }
.vb-plot { position: relative; display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 6%; padding: 0 3%; border-left: 1.5px solid var(--line-strong); border-bottom: 1.5px solid var(--ink); }
.vb-grid { position: absolute; left: 0; right: 0; height: 1px; background: var(--line); }
.vb-col { position: relative; display: flex; flex-direction: column; justify-content: flex-end; outline: none; }
.vb-col:focus-visible { outline: 3px solid var(--mag-d); outline-offset: 4px; border-radius: 6px; }
.vb-bars { display: flex; align-items: flex-end; justify-content: center; gap: 6px; height: 100%; }
.vb-bar { position: relative; width: min(100%, 160px); background: var(--s1); border-radius: 6px 6px 0 0; min-height: 2px; }
.vb-bar.em { background: var(--s2); }
.vb-bar.ref { width: 26%; background: var(--ref); }
.vb-bar b { position: absolute; left: 50%; bottom: calc(100% + .35rem); transform: translateX(-50%); font: 700 clamp(1rem, 1vw + .6rem, 1.5rem)/1 var(--display); color: var(--ink); white-space: nowrap; letter-spacing: -0.02em; }
.vb-lbl { position: absolute; top: calc(100% + .6rem); left: -10%; right: -10%; text-align: center; font-size: .9rem; color: var(--ink); line-height: 1.2; }
@media (max-width: 600px) { .vb { height: 260px; padding-bottom: 3.4rem; } .vb-lbl { font-size: .78rem; } }
