/* One surface for text hints and richer portal previews, matching VAT checks. */
[data-nahrai-tooltips] :is(.nahrai-tooltip, .rv-recap-validation-tooltip, .v2-hdr-popover, .v2-mg-tip, #v2-thumbtip) {
  --surface: var(--hint-surface, #fff); --surface-2: var(--hint-surface-2, #fafafb);
  --ink: var(--hint-ink, #191d28); --ink-2: var(--hint-ink-2, #5f6979); --ink-3: var(--hint-ink-3, #646e81);
  --line: var(--hint-line, #e5e6ec); --line-2: var(--hint-line-2, #d6d9e1);
  --ok: var(--hint-ok, #127a52); --warn: var(--hint-warn, #8f6206);
  --bad: var(--hint-bad, #b3261e); --info: var(--hint-info, #2a63a8);
  border: 1px solid var(--line, #d9dee7);
  border-radius: var(--r-lg, 14px);
  background: var(--surface, #fff);
  color: var(--ink, #191d28);
  box-shadow: var(--hint-shadow, 0 18px 40px -16px rgb(25 29 40 / 45%));
}
[data-nahrai-tooltips] .nahrai-tooltip {
  position: fixed; inset: auto; z-index: 1000; margin: 0;
  width: max-content; max-width: min(460px, calc(100vw - 16px));
  max-height: min(480px, calc(100dvh - 16px)); overflow: auto; box-sizing: border-box;
  padding: var(--sp-5, 16px); text-align: left;
  font: 400 12.5px/1.5 var(--font-sans, Inter, Segoe UI, Arial, sans-serif);
  white-space: pre-line; overflow-wrap: anywhere; cursor: default;
}
[data-nahrai-tooltips] .nahrai-tooltip::backdrop { background: transparent; pointer-events: none; }
[data-nahrai-tooltips] [data-v2-tooltip]::after { content: none !important; display: none !important; }
[data-nahrai-tooltips] .v2-mg-tip { padding: var(--sp-5, 16px); line-height: 1.5; }
[data-nahrai-tooltips] #v2-thumbtip { padding: var(--sp-3, 8px); }
@media print { [data-nahrai-tooltips] .nahrai-tooltip { display: none !important; } }

/* Tooltip content v1: one hierarchy for status, warnings and validation checks. */
[data-nahrai-tooltips] :is(.nahrai-tooltip-structured, .rv-recap-validation-tooltip) .nahrai-tip-section { white-space: normal; }
[data-nahrai-tooltips] .nahrai-tip-section + .nahrai-tip-section { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line); }
[data-nahrai-tooltips] .nahrai-tip-heading { display: flex; align-items: baseline; gap: 8px; margin-bottom: 8px; font-weight: 650; line-height: 1.4; }
[data-nahrai-tooltips] .nahrai-tip-heading > span { flex: none; width: 18px; text-align: center; }
[data-nahrai-tooltips] .nahrai-tip-section .nahrai-tip-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
[data-nahrai-tooltips] .nahrai-tip-list .nahrai-tip-item { display: flex; align-items: baseline; gap: 8px; color: var(--ink); }
[data-nahrai-tooltips] .nahrai-tip-marker { flex: none; width: 18px; text-align: center; font-weight: 650; }
[data-nahrai-tooltips] .nahrai-tip-section .nahrai-tip-item > div { min-width: 0; display: grid; gap: 2px; }
[data-nahrai-tooltips] .nahrai-tip-item strong { color: var(--ink); font-weight: 650; }
[data-nahrai-tooltips] .nahrai-tip-item strong + span { color: var(--ink-2); }
[data-nahrai-tooltips] :is(.nahrai-tip-heading, .nahrai-tip-marker).tone-bad { color: var(--bad); }
[data-nahrai-tooltips] :is(.nahrai-tip-heading, .nahrai-tip-marker).tone-warn { color: var(--warn); }
[data-nahrai-tooltips] :is(.nahrai-tip-heading, .nahrai-tip-marker).tone-ok { color: var(--ok); }
[data-nahrai-tooltips] :is(.nahrai-tip-heading, .nahrai-tip-marker).tone-info { color: var(--info); }
[data-nahrai-tooltips] :is(.nahrai-tip-heading, .nahrai-tip-marker).tone-mut { color: var(--ink-3); }
