/**
 * RankPress Visual System — V2 (Premium)
 * The design for the [rp_visual] widgets on all sites (no UI toggle).
 * Rollback lever (no UI): set option rankpress_visuals_design = 'v1'.
 *
 * Design goals: depth, refined typography, real data-viz (gauge fills to
 * the score, bars normalize to the group max, trend curve plotted from the
 * data), brand-accent theming, no perpetual animations.
 *
 * Isolation: root class is .rp-v2 (NOT .rp-visual) so neither the legacy
 * rp-visuals.css nor themes/dark.css (both scoped to .rp-visual) can leak
 * into v2. Dark mode reuses the site dark theme tokens (--rpdark-*).
 *
 * Accent: --rp-accent / --rp-accent-strong are injected inline from
 * RankPress::get_accent_color(). Defaults below are a safe fallback.
 */

/* ============================================================= TOKENS */
.rp-v2{
  --rp-accent:#6366f1;
  --rp-accent-strong:#4f46e5;
  --rp-accent-soft:color-mix(in srgb, var(--rp-accent) 12%, transparent);
  --rp-accent-ring:color-mix(in srgb, var(--rp-accent) 26%, transparent);

  --rp-success:#10b981; --rp-warning:#f59e0b; --rp-danger:#ef4444;

  --rp-surface:#ffffff;
  --rp-elev:color-mix(in srgb, var(--rp-accent) 4%, #ffffff);
  --rp-surface-2:#fbfbfd;
  --rp-text:#0b1220;
  --rp-text-2:#475467;
  --rp-text-3:#98a2b3;
  --rp-border:color-mix(in srgb, var(--rp-accent) 10%, #e6e8ee);
  --rp-hairline:color-mix(in srgb, var(--rp-accent) 7%, #eef0f4);

  --rp-shadow:0 1px 2px rgba(16,24,40,.04), 0 12px 28px -10px color-mix(in srgb, var(--rp-accent) 22%, rgba(16,24,40,.18));
  --rp-shadow-lg:0 2px 4px rgba(16,24,40,.04), 0 24px 48px -16px color-mix(in srgb, var(--rp-accent) 26%, rgba(16,24,40,.22));
  --rp-radius:20px;
  --rp-radius-sm:12px;
  --rp-font:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --rp-num:"Inter",ui-monospace,"SF Mono",Menlo,monospace;
}

/* ============================================================= BASE */
.rp-v2{
  display:block !important;
  margin:2rem auto !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  max-width:100% !important;
  font-family:var(--rp-font) !important;
  font-size:16px !important;
  line-height:1.5 !important;
  color:var(--rp-text) !important;
  box-sizing:border-box;
  isolation:isolate;
  -webkit-font-smoothing:antialiased;
}
.rp-v2 *{box-sizing:border-box}
.rp-v2 .num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}

.rp-v2__card{
  position:relative;
  background:linear-gradient(180deg, var(--rp-elev), var(--rp-surface) 42%) !important;
  border:1px solid var(--rp-border) !important;
  border-radius:var(--rp-radius) !important;
  padding:24px !important;
  box-shadow:var(--rp-shadow);
  overflow:hidden;
  transition:transform .35s cubic-bezier(.22,1,.36,1), box-shadow .35s;
}
.rp-v2__card::before{
  content:"";position:absolute;inset:0 0 auto 0;height:1px;
  background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--rp-accent) 50%, #fff), transparent);
  opacity:.6;
}
.rp-v2__card:hover{transform:translateY(-3px);box-shadow:var(--rp-shadow-lg)}

.rp-v2__eyebrow{
  display:flex;align-items:center;gap:8px;margin:0 0 14px !important;
  font-size:11px !important;font-weight:700 !important;letter-spacing:.07em;
  text-transform:uppercase;color:var(--rp-text-3) !important;
}
.rp-v2__eyebrow--center{justify-content:center}
.rp-v2__dot{width:6px;height:6px;border-radius:50%;background:var(--rp-accent);flex:none}

/* captions: screen-reader only (parity with v1) */
.rp-v2__caption,.rp-v2 .rp-sr-only{
  position:absolute !important;width:1px !important;height:1px !important;
  padding:0 !important;margin:-1px !important;overflow:hidden !important;
  clip:rect(0,0,0,0) !important;white-space:nowrap !important;border:0 !important;
}

/* list isolation (block theme/FontAwesome bullet injection) */
.rp-v2 ul,.rp-v2 li{list-style:none !important;margin:0 !important;padding:0 !important}
.rp-v2 li::marker{content:none !important}
.rp-v2 li::before,.rp-v2 li::after{content:none}

/* ============================================================= REVEAL
   Visible by default (no-JS, SEO-safe). When JS is active it sets the
   pre-reveal state on html.rp-v2-js and animates once on scroll-in. */
html.rp-v2-js .rp-v2:not(.in) .rp-v2__card{opacity:0;transform:translateY(14px) scale(.995)}
.rp-v2__card{opacity:1;transform:none;transition:opacity .5s cubic-bezier(.22,1,.36,1), transform .5s cubic-bezier(.22,1,.36,1), box-shadow .35s}

/* ============================================================= 1. METRIC */
.rp-v2--metric .rp-metric{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center}
.rp-v2--metric[data-level="success"]{--rp-metric-color:var(--rp-success)}
.rp-v2--metric[data-level="warning"]{--rp-metric-color:var(--rp-warning)}
.rp-v2--metric[data-level="danger"]{--rp-metric-color:var(--rp-danger)}
.rp-v2 .rp-metric{--rp-metric-color:var(--rp-accent)}
.rp-v2 .rp-metric__gauge{position:relative;width:160px;height:96px;flex:none}
.rp-v2 .rp-metric__svg{display:block;width:100%;height:auto;overflow:visible}
.rp-v2 .rp-metric__track{stroke:var(--rp-hairline);stroke-width:13;fill:none;stroke-linecap:round}
.rp-v2 .rp-metric__arc{
  stroke-width:13;fill:none;stroke-linecap:round;
  stroke-dasharray:calc(var(--rp-score,0) / var(--rp-max,100) * 100) 1000;
  transition:stroke-dasharray 1.4s cubic-bezier(.22,1,.36,1);
}
html.rp-v2-js .rp-v2:not(.in) .rp-metric__arc{stroke-dasharray:0 1000}
.rp-v2 .rp-metric__score{position:absolute;inset:auto 0 -2px 0;display:flex;align-items:baseline;justify-content:center;gap:2px}
.rp-v2 .rp-metric__value{font:700 34px/1 var(--rp-num) !important;letter-spacing:-.03em;color:var(--rp-text) !important;font-variant-numeric:tabular-nums}
.rp-v2 .rp-metric__max{font-size:13px !important;color:var(--rp-text-3) !important;font-weight:600}
.rp-v2 .rp-metric__badge{
  display:inline-flex;align-items:center;gap:6px;margin:2px 0 0 !important;
  padding:5px 11px !important;border-radius:999px;font-size:12px !important;font-weight:700 !important;
  color:#fff !important;background:var(--rp-metric-color,var(--rp-accent)) !important;
}
.rp-v2 .rp-metric__meta{display:flex;gap:18px;margin-top:14px;padding-top:12px;border-top:1px solid var(--rp-hairline)}
.rp-v2 .rp-metric__percentile,.rp-v2 .rp-metric__comparison{font-size:12px !important;color:var(--rp-text-3) !important}
.rp-v2 .rp-metric__percentile:empty,.rp-v2 .rp-metric__comparison:empty{display:none}

/* ============================================================= 2. TREND */
.rp-v2 .rp-trend{--rp-trend-color:var(--rp-accent)}
.rp-v2--trend[data-direction="down"]{--rp-trend-color:var(--rp-danger)}
.rp-v2 .rp-trend__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}
.rp-v2 .rp-trend__metric{display:flex;align-items:center;gap:8px;font-size:11px !important;font-weight:700 !important;letter-spacing:.06em;text-transform:uppercase;color:var(--rp-text-3) !important}
.rp-v2 .rp-trend__delta{display:inline-flex;align-items:center;gap:5px;padding:5px 11px !important;border-radius:999px;font:700 12.5px var(--rp-num) !important;color:#fff !important;background:var(--rp-success) !important}
.rp-v2 .rp-trend__delta[data-direction="down"]{background:var(--rp-danger) !important}
.rp-v2 .rp-trend__arrow{width:11px;height:11px;display:block}
.rp-v2 .rp-trend__delta[data-direction="down"] .rp-trend__arrow{transform:rotate(180deg)}
.rp-v2 .rp-trend__chart{position:relative;width:100%;height:150px;margin-top:6px}
.rp-v2 .rp-trend__svg{display:block;width:100%;height:100%;overflow:visible}
.rp-v2 .rp-trend__grid{stroke:var(--rp-hairline);stroke-width:1}
.rp-v2 .rp-trend__area{fill:var(--rp-trend-color);opacity:0;transition:opacity 1s ease .3s}
.rp-v2.in .rp-trend__area{opacity:.16}
.rp-v2 .rp-trend__curve{fill:none;stroke:var(--rp-trend-color);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.rp-v2 .rp-trend__point{fill:var(--rp-surface);stroke:var(--rp-trend-color);stroke-width:3}
.rp-v2 .rp-trend__point--end{fill:var(--rp-trend-color)}
.rp-v2 .rp-trend__labels{display:flex;justify-content:space-between;margin-top:12px;padding-top:12px;border-top:1px solid var(--rp-hairline)}
.rp-v2 .rp-trend__label{display:flex;flex-direction:column;gap:2px}
.rp-v2 .rp-trend__label--end{align-items:flex-end}
.rp-v2 .rp-trend__label-value{font:800 22px var(--rp-num) !important;letter-spacing:-.02em;color:var(--rp-text) !important}
.rp-v2 .rp-trend__label--end .rp-trend__label-value{color:var(--rp-trend-color) !important}
.rp-v2 .rp-trend__label-text{font-size:12px !important;color:var(--rp-text-3) !important}

/* ============================================================= 3. BARS */
.rp-v2 .rp-bars__list{display:flex;flex-direction:column;gap:16px;margin-top:4px}
.rp-v2[data-count="2"] .rp-bars__item[data-index="3"],
.rp-v2[data-count="2"] .rp-bars__item[data-index="4"],
.rp-v2[data-count="3"] .rp-bars__item[data-index="4"]{display:none}
.rp-v2 .rp-bars__row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:7px}
.rp-v2 .rp-bars__label{font-size:13.5px !important;font-weight:600 !important;color:var(--rp-text) !important}
.rp-v2 .rp-bars__value{font:700 15px var(--rp-num) !important;color:var(--rp-text) !important}
.rp-v2 .rp-bars__unit{font-size:11px !important;color:var(--rp-text-3) !important;font-weight:500;margin-left:3px}
.rp-v2 .rp-bars__track{height:12px;border-radius:999px;background:var(--rp-hairline);overflow:hidden;position:relative}
.rp-v2 .rp-bars__fill{
  height:100%;border-radius:999px;
  width:calc(var(--bar-percent,50) * 1%);
  background:linear-gradient(90deg, var(--rp-accent), color-mix(in srgb, var(--rp-accent) 55%, #fff));
  transition:width 1.1s cubic-bezier(.22,1,.36,1);
}
html.rp-v2-js .rp-v2:not(.in) .rp-bars__fill{width:0}
.rp-v2 .rp-bars__item--lead .rp-bars__fill{box-shadow:0 0 0 1px var(--rp-accent-ring)}
.rp-v2 .rp-bars__item--lead .rp-bars__value{color:var(--rp-accent-strong) !important}

/* ============================================================= 4. TIMELINE */
.rp-v2 .rp-timeline__header{font-size:11px !important;font-weight:700 !important;letter-spacing:.07em;text-transform:uppercase;color:var(--rp-text-3) !important;text-align:center;margin:0 0 16px !important}
.rp-v2 .rp-timeline__header:empty{display:none}
.rp-v2 .rp-timeline__steps{display:grid;gap:14px;grid-template-columns:repeat(4,1fr)}
.rp-v2[data-count="2"] .rp-timeline__steps{grid-template-columns:repeat(2,1fr)}
.rp-v2[data-count="3"] .rp-timeline__steps{grid-template-columns:repeat(3,1fr)}
.rp-v2[data-count="2"] .rp-timeline__step[data-step="3"],
.rp-v2[data-count="2"] .rp-timeline__step[data-step="4"],
.rp-v2[data-count="3"] .rp-timeline__step[data-step="4"]{display:none}
.rp-v2 .rp-timeline__step{position:relative;text-align:center;padding:18px 12px;border-radius:var(--rp-radius-sm);background:var(--rp-surface-2);border:1px solid var(--rp-hairline)}
.rp-v2 .rp-timeline__step:not(:last-child)::after{content:"";position:absolute;top:36px;right:-8px;width:16px;height:2px;background:var(--rp-border);z-index:1}
.rp-v2 .rp-timeline__number{
  width:38px;height:38px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;
  font:700 15px var(--rp-num);color:#fff;
  background:linear-gradient(135deg, var(--rp-accent), var(--rp-accent-strong));
  box-shadow:0 6px 14px -4px var(--rp-accent-ring);position:relative;
}
.rp-v2 .rp-timeline__step--final .rp-timeline__number{background:linear-gradient(135deg, var(--rp-success), #059669)}
.rp-v2 .rp-timeline__check{display:none;position:absolute;top:-4px;right:-4px;width:16px;height:16px;background:#fff;border-radius:50%;color:var(--rp-success)}
.rp-v2 .rp-timeline__step--final .rp-timeline__check{display:grid;place-items:center}
.rp-v2 .rp-timeline__title{font-size:13px !important;font-weight:680 !important;color:var(--rp-text) !important;margin:0 0 3px !important}
.rp-v2 .rp-timeline__desc{font-size:11.5px !important;color:var(--rp-text-2) !important;line-height:1.4 !important}

/* ============================================================= 5. SPLIT */
.rp-v2 .rp-split__content{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:stretch}
.rp-v2 .rp-split__side{padding:16px;border-radius:var(--rp-radius-sm);background:var(--rp-surface-2);border:1px solid var(--rp-hairline)}
.rp-v2[data-winner="left"] .rp-split__side--left,
.rp-v2[data-winner="right"] .rp-split__side--right{border-color:color-mix(in srgb, var(--rp-success) 50%, transparent);background:color-mix(in srgb, var(--rp-success) 7%, var(--rp-surface))}
.rp-v2 .rp-split__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.rp-v2 .rp-split__label{font-size:14.5px !important;font-weight:680 !important;color:var(--rp-text) !important}
.rp-v2 .rp-split__score{font:700 13px var(--rp-num) !important;color:var(--rp-accent-strong) !important}
.rp-v2 .rp-split__score:empty{display:none}
.rp-v2 .rp-split__points{display:flex;flex-direction:column;gap:8px}
.rp-v2 .rp-split__points li{display:flex;gap:8px;align-items:flex-start;font-size:13px !important;color:var(--rp-text-2) !important;line-height:1.4}
.rp-v2 .rp-split__points li::before{content:"" !important;width:6px;height:6px;border-radius:50%;background:var(--rp-accent);margin-top:7px;flex:none;display:block}
.rp-v2[data-winner="left"] .rp-split__side--left .rp-split__points li::before,
.rp-v2[data-winner="right"] .rp-split__side--right .rp-split__points li::before{background:var(--rp-success)}
.rp-v2 .rp-split__badge{display:none;margin-top:12px;padding:5px 0;text-align:center;font-size:11px !important;font-weight:700 !important;color:var(--rp-success) !important;background:color-mix(in srgb, var(--rp-success) 12%, transparent);border-radius:8px}
.rp-v2[data-winner="left"] .rp-split__side--left .rp-split__badge,
.rp-v2[data-winner="right"] .rp-split__side--right .rp-split__badge{display:block}
.rp-v2 .rp-split__divider{display:flex;align-items:center;justify-content:center}
.rp-v2 .rp-split__vs{align-self:center;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font:700 12px var(--rp-num);color:var(--rp-text-3);background:var(--rp-surface);border:1px solid var(--rp-border)}

/* ============================================================= 6. FOCUS */
.rp-v2--focus .rp-focus{display:grid;grid-template-columns:52px 1fr;gap:16px;align-items:start;border-left:3px solid var(--rp-accent);padding-left:21px !important}
.rp-v2 .rp-focus__icon{width:52px;height:52px;border-radius:14px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg, var(--rp-accent), var(--rp-accent-strong));box-shadow:0 8px 18px -6px var(--rp-accent-ring)}
.rp-v2 .rp-focus__icon svg{display:none;width:26px;height:26px;fill:currentColor}
.rp-v2[data-variant="quote"] .rp-focus__icon-quote,
.rp-v2[data-variant="definition"] .rp-focus__icon-definition,
.rp-v2[data-variant="insight"] .rp-focus__icon-insight,
.rp-v2:not([data-variant]) .rp-focus__icon-insight{display:block}
.rp-v2 .rp-focus__title{font-size:15px !important;font-weight:700 !important;color:var(--rp-text) !important;margin:2px 0 6px !important}
.rp-v2[data-variant="definition"] .rp-focus__title{color:var(--rp-accent-strong) !important}
.rp-v2 .rp-focus__text{font-size:14.5px !important;color:var(--rp-text-2) !important;line-height:1.6 !important}
.rp-v2[data-variant="quote"] .rp-focus__text{font-style:italic}
.rp-v2 .rp-focus__source{display:inline-block;margin-top:10px;font-size:12px !important;font-style:italic;color:var(--rp-text-3) !important}
.rp-v2 .rp-focus__source:empty{display:none}

/* ============================================================= 7. ALERT */
.rp-v2--alert .rp-alert{display:grid;grid-template-columns:48px 1fr;gap:15px;align-items:start;border-left:3px solid var(--rp-warning);padding-left:21px !important}
.rp-v2--alert[data-type="danger"] .rp-alert{border-left-color:var(--rp-danger)}
.rp-v2--alert[data-type="info"] .rp-alert{border-left-color:var(--rp-accent)}
.rp-v2--alert[data-type="tip"] .rp-alert{border-left-color:var(--rp-success)}
.rp-v2 .rp-alert__icon{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;color:#fff;background:var(--rp-warning)}
.rp-v2[data-type="danger"] .rp-alert__icon{background:var(--rp-danger)}
.rp-v2[data-type="info"] .rp-alert__icon{background:var(--rp-accent)}
.rp-v2[data-type="tip"] .rp-alert__icon{background:var(--rp-success)}
.rp-v2 .rp-alert__icon svg{display:none;width:24px;height:24px;fill:currentColor}
.rp-v2[data-type="danger"] .rp-alert__icon-danger,
.rp-v2[data-type="warning"] .rp-alert__icon-warning,
.rp-v2[data-type="info"] .rp-alert__icon-info,
.rp-v2[data-type="tip"] .rp-alert__icon-tip,
.rp-v2:not([data-type]) .rp-alert__icon-warning{display:block}
.rp-v2 .rp-alert__title{font-size:15px !important;font-weight:700 !important;color:var(--rp-warning) !important;margin:1px 0 5px !important}
.rp-v2[data-type="danger"] .rp-alert__title{color:var(--rp-danger) !important}
.rp-v2[data-type="info"] .rp-alert__title{color:var(--rp-accent-strong) !important}
.rp-v2[data-type="tip"] .rp-alert__title{color:var(--rp-success) !important}
.rp-v2 .rp-alert__message{font-size:14px !important;color:var(--rp-text) !important;line-height:1.5 !important}
.rp-v2 .rp-alert__details{font-size:12.5px !important;color:var(--rp-text-2) !important;margin-top:6px !important}
.rp-v2 .rp-alert__details:empty{display:none}

/* ============================================================= 8. CHECKLIST */
.rp-v2 .rp-checklist__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.rp-v2 .rp-checklist__title{font-size:15px !important;font-weight:700 !important;color:var(--rp-text) !important}
.rp-v2 .rp-checklist__count{padding:5px 11px !important;border-radius:999px;font-size:12px !important;font-weight:700 !important;color:#fff !important;background:linear-gradient(135deg, var(--rp-success), #059669) !important}
.rp-v2 .rp-checklist__list{display:flex;flex-direction:column;gap:11px}
.rp-v2[data-count="3"] .rp-checklist__item[data-index="4"],
.rp-v2[data-count="3"] .rp-checklist__item[data-index="5"],
.rp-v2[data-count="4"] .rp-checklist__item[data-index="5"]{display:none}
.rp-v2 .rp-checklist__item{display:flex;gap:12px;align-items:flex-start;font-size:14px !important;color:var(--rp-text) !important;line-height:1.5}
.rp-v2 .rp-checklist__marker{flex:none}
.rp-v2 .rp-checklist__check{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg, var(--rp-success), #059669);box-shadow:0 3px 8px -2px color-mix(in srgb, var(--rp-success) 50%, transparent)}
.rp-v2 .rp-checklist__check svg{display:block;width:13px;height:13px}
.rp-v2 .rp-checklist__number{display:none;font:700 13px var(--rp-num);color:#fff;width:24px;height:24px;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--rp-accent),var(--rp-accent-strong))}
.rp-v2[data-style="numbered"] .rp-checklist__check{display:none}
.rp-v2[data-style="numbered"] .rp-checklist__number{display:grid}
.rp-v2 .rp-checklist__text{color:var(--rp-text) !important}

/* ============================================================= DARK MODE
   Follows the site dark theme (themes/dark.css). Accent = dark theme
   accent-1, gradients use the dark theme gradient, as requested. */
body.po-rankpress-dark .rp-v2{
  --rp-accent:var(--rpdark-accent-1, #22d3ee);
  --rp-accent-strong:var(--rpdark-accent-2, #6366f1);
  --rp-surface:var(--rpdark-bg-card, rgba(255,255,255,.04));
  --rp-elev:rgba(255,255,255,.04);
  --rp-surface-2:rgba(255,255,255,.03);
  --rp-text:var(--rpdark-text-primary, #f1f5f9);
  --rp-text-2:var(--rpdark-text-body, rgba(226,232,240,.85));
  --rp-text-3:var(--rpdark-text-muted, rgba(148,163,184,.75));
  --rp-border:var(--rpdark-border, rgba(148,163,184,.16));
  --rp-hairline:rgba(255,255,255,.06);
  --rp-shadow:0 1px 2px rgba(0,0,0,.3), 0 16px 40px -12px rgba(0,0,0,.55);
  --rp-shadow-lg:0 2px 6px rgba(0,0,0,.4), 0 30px 60px -18px rgba(0,0,0,.7);
}
body.po-rankpress-dark .rp-v2 .rp-timeline__number,
body.po-rankpress-dark .rp-v2 .rp-checklist__number,
body.po-rankpress-dark .rp-v2 .rp-focus__icon{background:var(--rpdark-accent-grad, linear-gradient(135deg,#22d3ee,#6366f1))}
body.po-rankpress-dark .rp-v2 .rp-bars__fill{background:var(--rpdark-accent-grad, linear-gradient(135deg,#22d3ee,#6366f1))}
body.po-rankpress-dark .rp-v2 .rp-metric__badge{color:#0b1020 !important}

/* ============================================================= RESPONSIVE */
@media (max-width:768px){
  .rp-v2{margin:1.5rem .25rem !important;font-size:15px !important}
  .rp-v2__card{padding:18px !important;border-radius:14px !important}
  .rp-v2 .rp-metric__gauge{width:140px}
  .rp-v2 .rp-metric__value{font-size:30px !important}
}
@media (max-width:600px){
  .rp-v2--metric .rp-metric{grid-template-columns:1fr;justify-items:center;text-align:center;gap:14px}
  .rp-v2 .rp-timeline__steps{grid-template-columns:repeat(2,1fr) !important}
  .rp-v2 .rp-timeline__step:not(:last-child)::after{display:none}
  .rp-v2 .rp-split__content{grid-template-columns:1fr}
  .rp-v2 .rp-split__divider{margin:2px 0}
  .rp-v2--focus .rp-focus,.rp-v2--alert .rp-alert{grid-template-columns:1fr;text-align:center}
  .rp-v2 .rp-focus__icon,.rp-v2 .rp-alert__icon{margin:0 auto}
  /* Center the text too (headings are often forced left by the theme, which
     beats the inherited centering — so set it explicitly here). */
  .rp-v2--focus .rp-focus__content,.rp-v2--focus .rp-focus__title,.rp-v2--focus .rp-focus__text,.rp-v2--focus .rp-focus__source,
  .rp-v2--alert .rp-alert__content,.rp-v2--alert .rp-alert__title,.rp-v2--alert .rp-alert__message,.rp-v2--alert .rp-alert__details{text-align:center !important}
}

/* ============================================================= REDUCED MOTION */
@media (prefers-reduced-motion:reduce){
  .rp-v2 *,.rp-v2 .rp-v2__card,.rp-v2 .rp-bars__fill,.rp-v2 .rp-metric__arc,.rp-v2 .rp-trend__area{
    transition:none !important;animation:none !important;
  }
  html.rp-v2-js .rp-v2:not(.in) .rp-v2__card,
  html.rp-v2-js .rp-v2:not(.in) .rp-bars__fill,
  html.rp-v2-js .rp-v2:not(.in) .rp-metric__arc{opacity:1;transform:none;width:calc(var(--bar-percent,50)*1%);stroke-dasharray:calc(var(--rp-score,0)/var(--rp-max,100)*100) 1000}
}

/* ============================================================= PRINT */
@media print{
  .rp-v2__card{box-shadow:none !important;border:1px solid #ccc !important;background:#fff !important}
  .rp-v2,.rp-v2 *{animation:none !important;transition:none !important}
}
