/* ===========================================================================
   114 — "COPY AS IMAGE" CARD: RASTERIZER SAFETY LAYER
   ---------------------------------------------------------------------------
   113 now carries the full target design. This file exists only to keep
   the html2canvas 1.4.1 guarantees locked in, so a future edit to 113
   can't silently bring back the bug the broker reported (values cut off
   at the bottom, long values running off the card edge):

   * html2canvas ignores text-overflow:ellipsis — it paints the whole
     string, so nowrap text simply overflows instead of truncating.
   * Its clip box for an overflow:hidden text node comes from the line
     box; with line-height:normal on Fraunces/Inter that box is shorter
     than the painted glyphs, so descenders get shaved off.

   Hence: no text node inside the export card may be nowrap + hidden,
   and every one of them wraps instead.
   ========================================================================= */

/* Chrome/WebKit font boosting inflates text inside a wide (640px) block
   laid out in a narrow phone viewport — exactly what the off-screen
   export host is when a broker copies from a phone. */
.avl-export-host,
.avl-export-host *{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

/* Never clip, always wrap. */
.xcard .xcard-h-title,
.xcard .xcard-h-sub,
.xcard .xcard-fact b,
.xcard .xcard-fact small,
.xcard .xcard-ud-title,
.xcard .xcard-ud-row-label,
.xcard .xcard-ud-row-val,
.xcard .xcard-opnote-raw,
.xcard .xcard-footer-name,
.xcard .xcard-footer-area,
.xcard .xcard-footer-tag{
  overflow:visible;
  text-overflow:clip;
  white-space:normal;
  overflow-wrap:break-word;
  word-break:normal;
}

/* The rent figure is the one exception to "always wrap": in the
   reference the amount and its "/month" suffix share one baseline, and
   letting them wrap put "/month" on a line of its own under the figure.
   It is safe to pin here ONLY because it can't overflow: the builder
   measures the figure and tags it .is-long/.is-xlong, and 113 steps the
   font size down so even a seven-figure rent stays inside the panel
   (see the .xcard-rent-value block there). No hidden overflow involved,
   so the html2canvas clipping bug above still can't bite. */
.xcard .xcard-rent-value{
  overflow:visible;
  text-overflow:clip;
  white-space:nowrap;
}

/* Pills stay on one line by design (short, fixed labels) but must never
   rely on hidden overflow to get there. */
.xcard .xcard-badge,
.xcard .xcard-h-unit,
.xcard .xcard-ud-status,
.xcard .xcard-opnote-signal,
.xcard .xcard-date{
  overflow:visible;
  text-overflow:clip;
}
