
  .kv-table { width: 100%; border-collapse: collapse; font-size: 14px; }
  .kv-table td { padding: 8px 12px; border-bottom: 1px solid var(--border-light); vertical-align: top; }
  .kv-table td:first-child { color: var(--slate); width: 40%; font-weight: 500; white-space: nowrap; }
  .narrative-block { background: var(--soft-stone); border-radius: 8px; padding: 20px 24px; font-size: 15px; line-height: 1.8; white-space: pre-wrap; }
  .guidance-table { width: 100%; border-collapse: collapse; font-size: 14px; }
  .guidance-table th { background: var(--soft-stone); padding: 8px 12px; text-align: left; font-size: 12px; color: var(--slate); text-transform: uppercase; }
  .guidance-table td { padding: 8px 12px; border-bottom: 1px solid var(--border-light); }

  /* Price axis (T-502) */
  .price-axis-outer { margin: 16px 0 0; padding: 0 8px; overflow: visible; }
  .price-axis-label { font-size: 12px; color: var(--slate); margin-bottom: 4px; text-transform: uppercase; letter-spacing: .18em; }
  .price-axis { position: relative; height: 2px; background: var(--hairline); margin: 40px 0 48px; border-radius: 1px; overflow: visible; }
  .pa-tick { position: absolute; top: -5px; width: 12px; height: 12px; border-radius: 50%; transform: translateX(-50%); }
  .pa-bear { background: hsl(4,45%,52%); }
  .pa-base { background: var(--action-blue); }
  .pa-bull { background: hsl(142,40%,45%); }
  .pa-tick-label { position: absolute; top: 16px; left: 50%; transform: translateX(-50%); font-size: 11px; white-space: nowrap; text-align: center; line-height: 1.5; }
  .pa-bear .pa-tick-label { color: hsl(4,45%,52%); }
  .pa-base .pa-tick-label { color: var(--action-blue); }
  .pa-bull .pa-tick-label { color: hsl(142,40%,45%); }
  .pa-current { position: absolute; top: -9px; transform: translateX(-50%); }
  .pa-current-dot { width: 20px; height: 20px; border-radius: 50%; background: var(--primary); border: 3px solid white; box-shadow: 0 1px 5px rgba(0,0,0,.25); }
  .pa-current-label { position: absolute; bottom: 24px; left: 50%; transform: translateX(-50%); font-size: 11px; font-weight: 600; color: var(--primary); white-space: nowrap; text-align: center; line-height: 1.5; }
  .section-empty { font-size: 13px; color: var(--muted); padding: 8px 0; font-style: italic; }
  .completeness-badge { display: inline-block; padding: 2px 8px; border-radius: 4px; font-size: 12px; background: var(--soft-stone); color: var(--slate); margin-left: 8px; vertical-align: middle; }
