/* The meter: confidence as a visual quality, never a number.
   Markup: src/views/partials/meter.pug. Brand palette only (ember for what
   we know, indigo/mist for what we do not); no red, no cyan.
   - known:   small, bright, hard-edged segments
   - fuzzy:   larger, dimmer, softly bloomed (a half-known value)
   - absent:  dotted unlit segments inside a faint indigo bloom: "not yet
              asked", deliberately unlike a crisp, nearly empty "just starting". */
.meter {
  --meter-lit: var(--ember-deep, #b97a2e);
  --meter-edge: var(--ember-low, #a8793e);
  --meter-empty: rgba(61, 52, 112, 0.14);
  --meter-word: var(--ink-soft, #3d3470);
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  vertical-align: middle;
}
.night-sky .meter {
  --meter-lit: var(--ember-high, #ffc76a);
  --meter-edge: var(--ember-core, #e8a94e);
  --meter-empty: rgba(141, 132, 192, 0.18);
  --meter-word: var(--parchment, #e8dcc0);
}
.meter__segs { display: inline-flex; gap: 2px; }
.meter__seg {
  width: 0.9rem;
  height: 0.45rem;
  border-radius: 1px;
  background: var(--meter-empty);
  box-shadow: inset 0 0 0 1px var(--meter-edge);
}
.meter__seg.is-lit { background: var(--meter-lit); }
.meter__word { font-size: var(--text-small, 0.85rem); color: var(--meter-word); white-space: nowrap; }

.meter--fuzzy {
  --meter-lit: var(--mist, #8d84c0);
  --meter-edge: transparent;
}
.meter--fuzzy .meter__seg {
  width: 1.1rem;
  height: 0.6rem;
  border-radius: 3px;
  box-shadow: none;
  opacity: 0.75;
  filter: blur(0.6px);
}
.meter--fuzzy .meter__segs { filter: drop-shadow(0 0 4px rgba(141, 132, 192, 0.55)); }
.meter--fuzzy .meter__word { font-style: italic; opacity: 0.85; }

.meter--absent {
  --meter-edge: var(--mist, #8d84c0);
  --meter-empty: transparent;
}
.meter--absent .meter__seg {
  width: 1.1rem;
  height: 0.6rem;
  border-radius: 3px;
  box-shadow: none;
  border: 1px dotted var(--mist, #8d84c0);
  opacity: 0.7;
}
.meter--absent .meter__segs { filter: drop-shadow(0 0 6px rgba(141, 132, 192, 0.45)); }
.meter--absent .meter__word { font-style: italic; color: var(--mist, #8d84c0); }

/* Product-card badge: the meter sits where the percent label did. */
.product-badge.product-badge--meter {
  display: inline-flex;
  background: rgba(247, 245, 240, 0.94);
  color: var(--ink-soft, #3d3470);
}
.product-badge--meter .meter__seg { width: 0.6rem; height: 0.35rem; }
.product-badge--meter .meter__word { font-size: var(--text-xs, 0.75rem); }

/* Profile: where a number used to sit. */
.profile-meter-row { display: flex; align-items: center; gap: 0.75rem; flex-wrap: wrap; }
.rb-part .meter { flex-direction: column; gap: 0.25rem; }
.honest-engine__figures { display: grid; grid-template-columns: repeat(auto-fit, minmax(9rem, 1fr)); gap: 1rem; margin: 1rem 0; }
.honest-engine__figure dt { font-size: var(--text-small, 0.85rem); color: var(--color-text-secondary, #546E7A); }
.honest-engine__figure dd { margin: 0; font-family: var(--font-mono, monospace); font-size: 1.4rem; }
