/* Cobalt Pearl semantic graphic exceptions.
 * Keep this file after the generated legacy styles and pearl-families.css.
 * Do not pass it through pearl_styles.normalize_css: these explicit exceptions
 * preserve source state marks and data-series identities, not page decoration.
 * No source labels, statuses, dates or values are changed. Roadmap geometry is
 * retained; the allocation adapter replaces its redundant stacked encoding.
 */

/* Roadmap: solid completed work, outlined stages and hatched remaining work.
 * Owning definitions: company/shared/preview-progress-roadmap.css and the
 * renderDeliveryField/renderStages/renderLastMile functions in its page script.
 */
body.pearl-page .pr-page :is(.pr-micro-fill,.pr-minirail-fill,.pr-barfill,.pr-ruler-fill,.pr-lm-fill,.pr-sw--solid) {
  background:var(--pearl-ink);
}
body.pearl-page .pr-page :is(.pr-node,.pr-gate,.pr-spine-dot) {
  background:var(--pearl-panel);
  border-color:var(--pearl-strong);
}
body.pearl-page .pr-page :is(.pr-node--built,.pr-spine-item--built .pr-spine-dot) {
  background:var(--pearl-ink);
  border-color:var(--pearl-ink);
}
body.pearl-page .pr-page .pr-spine-item--built:not(:last-child)::before {
  background:var(--pearl-ink);
}
body.pearl-page .pr-page .pr-gate--clear {
  background:var(--pearl-accent-mark);
  border-color:var(--pearl-accent-mark);
}
body.pearl-page .pr-page :is(.pr-marker,.pr-spine-item--current .pr-spine-dot) {
  background:var(--pearl-panel);
  border-color:var(--pearl-accent-mark);
}
body.pearl-page .pr-page .pr-minirail-dash {
  border-color:var(--pearl-strong);
}
body.pearl-page .pr-page .pr-block {
  background:var(--pearl-ink);
  color:var(--pearl-bg);
}
body.pearl-page .pr-page .pr-block :is(strong,span) {
  color:var(--pearl-bg)!important;
}
body.pearl-page .pr-page .pr-hatch {
  background-image:repeating-linear-gradient(45deg,var(--pearl-strong) 0 1px,transparent 1px 7px);
}
body.pearl-page .pr-page :is(.pr-bluehatch,.pr-field-future) {
  background-image:repeating-linear-gradient(45deg,var(--pearl-strong) 0 1px,transparent 1px 7px);
}
body.pearl-page .pr-page :is(.pr-sw.pr-hatch,.pr-sw.pr-bluehatch,.pr-sw--dashed) {
  border-color:var(--pearl-strong);
}
body.pearl-page .pr-page .pr-sw--outline {
  background:transparent;
  border-color:var(--pearl-ink);
}

/* Utility Rails: one ALPHA-amount series, eleven directly labelled categories.
 * Source: tokens/tokens.screen.json graphics.categorical.slots[0]; discipline04
 * sections2.4 and3.2; ba-design-system/src/JewelChart.tsx single-series behavior.
 * Count bars share a zero-to15B axis. pearl-semantics.js reads existing B amounts;
 * no category, amount, percentage, status or policy wording is replaced.
 * The old empty part-to-whole bar is hidden only after all11 rows validate.
 */
body.pearl-page .ba-ur #distribution {
  --allocation-series:#2551A8;
}
html[data-theme="dark"] body.pearl-page .ba-ur #distribution {
  --allocation-series:#5E8BE8;
}
body.pearl-page .ba-ur #distribution .pearl-allocation-stack-retired {
  display:none!important;
}
body.pearl-page .ba-ur #distribution .pearl-allocation-chart {
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:0!important;
}
body.pearl-page .ba-ur #distribution .pearl-allocation-row {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:8px 16px!important;
  align-items:baseline!important;
  padding:16px 0!important;
  min-width:0;
}
body.pearl-page .ba-ur #distribution .pearl-allocation-key {
  display:none;
}
body.pearl-page .ba-ur #distribution :is(.pearl-allocation-name,.pearl-allocation-percentage,.pearl-allocation-amount) {
  color:var(--pearl-ink)!important;
  font-size:14px!important;
  line-height:1.5!important;
  min-width:0;
  width:auto!important;
  overflow-wrap:anywhere;
}
body.pearl-page .ba-ur #distribution :is(.pearl-allocation-percentage,.pearl-allocation-amount) {
  font-family:var(--pearl-font-mono);
  white-space:nowrap;
  text-align:right;
}
body.pearl-page .ba-ur #distribution .pearl-allocation-track {
  grid-column:1 / -1;
  display:block;
  height:16px;
  border-inline-start:1px solid var(--pearl-strong);
}
body.pearl-page .ba-ur #distribution .pearl-allocation-mark {
  display:block;
  height:100%;
  width:var(--allocation-width);
  background:var(--allocation-series);
  border-radius:0 2px 2px 0;
}
body.pearl-page .ba-ur #distribution .pearl-allocation-axis {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px 0;
  margin:24px 0 0;
  padding:0 0 8px;
  border-bottom:1px solid var(--pearl-strong);
  color:var(--pearl-ink);
  font:400 13px/1.5 var(--pearl-font-mono);
}
body.pearl-page .ba-ur #distribution .pearl-allocation-unit {
  grid-column:1 / -1;
  font-family:var(--pearl-font-body);
}
body.pearl-page .ba-ur #distribution .pearl-allocation-ticks {
  grid-column:1 / -1;
  display:flex;
  justify-content:space-between;
}
@media(max-width:480px) {
  body.pearl-page .ba-ur #distribution .pearl-allocation-row {
    gap:8px 10px!important;
  }
  body.pearl-page .ba-ur #distribution .pearl-allocation-name {
    grid-column:1 / -1;
  }
  body.pearl-page .ba-ur #distribution .pearl-allocation-percentage {
    grid-column:2;
  }
}
