/* ReScore — Report V2 (phone). Base styles copied from the owner's prototype; everything else is inline in the template. */
#rv2-app{ margin:0; font-family:'Plus Jakarta Sans',system-ui,sans-serif; color:#17181C; background:#DAD7CF; min-height:100vh; -webkit-text-size-adjust:100%; }
#rv2-app *{ box-sizing:border-box; }
#rv2-app button{ font:inherit; color:inherit; background:none; border:0; padding:0; cursor:pointer; text-align:left; }
#rv2-app button:focus-visible{ outline:3px solid #2946C7; outline-offset:2px; }
#rv2-app a{ color:#2946C7; } #rv2-app a:hover{ color:#1C3196; }
#rv2-app h1,#rv2-app h2,#rv2-app p{ margin:0; }
#rv2-app .disp{ font-family:'Bricolage Grotesque',system-ui,sans-serif; }
#rv2-app .noscroll{ scrollbar-width:none; }
#rv2-app .noscroll::-webkit-scrollbar{ display:none; }
/* the prototype's 390x844 phone frame becomes the real phone screen */
#rv2-app .rv2-frame{ width:100%; height:100vh; height:100dvh; max-width:480px; margin:0 auto; }
@media (max-width:767px){ html,body{ overflow-x:hidden; min-width:0 !important; } #rv2-app{ width:100vw; max-width:100vw; overflow-x:hidden; min-height:100vh; min-height:100dvh; background:#EEF1F5; } /* same height as the frame (100dvh): 100vh is taller on phone Chrome and left an off-white strip + pushed the top bar off screen (owner 2026-10-11) */ }
@media (min-width:768px){ #rv2-app{ display:flex; justify-content:center; align-items:flex-start; padding:20px 0; } #rv2-app .rv2-frame{ width:390px; height:844px; border-radius:28px; margin:0; } }
body.page-template-elementor_canvas{ margin:0; background:#DAD7CF; }
.rv2-loading,.rv2-msg{ max-width:520px; margin:60px auto; padding:32px 20px; text-align:center; font-family:'Plus Jakarta Sans',system-ui,sans-serif; font-size:16px; color:#17181C; }
.rv2-msg h1{ font-size:24px; margin:0 0 10px; }
.rv2-msg p{ margin:0 0 18px; color:#5B5E66; }
.rv2-btn{ display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 18px; border-radius:14px; background:#2946C7; color:#fff !important; font-weight:700; text-decoration:none; }
/* "See the full chart": classic card full screen, only a way back */
#rv2-chart{ position:fixed; inset:0; z-index:100001; background:#FFFFFF; display:flex; flex-direction:column; font-family:Roboto,system-ui,sans-serif; color:#141B23; }
#rv2-chart .rv2-chart-bar{ flex-shrink:0; display:flex; align-items:center; gap:10px; background:#162033; color:#FFFFFF; padding:8px 12px; min-height:56px; }
#rv2-chart .rv2-chart-back{ font:inherit; font-size:15px; font-weight:700; color:#FFFFFF; background:#259AEB; border:0; border-radius:4px; padding:0 14px; height:40px; cursor:pointer; flex-shrink:0; }
#rv2-chart .rv2-chart-title{ font-size:14px; font-weight:700; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; opacity:.85; }
#rv2-chart .rv2-chart-body{ flex:1 1 auto; overflow:auto; -webkit-overflow-scrolling:touch; padding:12px; }
#rv2-chart .rv2-chart-host{ max-width:100%; overflow-x:auto; }
#rv2-chart .rv2-chart-wait{ padding:40px 16px; text-align:center; color:#5B5E66; font-size:15px; }
#rv2-chart .rv2-chart-zoom > *{ min-width:100%; }
#rv2-chart .rv2-chart-zoom .rv2-expand{ display:none; }
#rv2-chart .rv2-zoomed canvas{ min-height:60vh; }
html.rv2-chart-open, html.rv2-chart-open body{ overflow:hidden; }
html.rv2-chart-open .rsc-theme-dot, html.rv2-chart-open .rsc-theme-selector{ display:none !important; }
@media (min-width:768px){ #rv2-chart{ left:50%; right:auto; width:390px; margin-left:-195px; top:20px; bottom:auto; height:844px; border-radius:28px; overflow:hidden; } }

/* ===================== the card page: owner's final template v10 (2026-10-08) =====================
   deep #162033 = you have · main button · fix numerals   sky #259AEB = rail · links · compare · task boxes
   green #58B44C = you can win · gains · promise · Yes     gold #FED34F = link underline only
   text always dark; the old chart keeps its own colours */
#rv2-app .rvc-scroll{ background:#EEF1F5; }
#rv2-app .rvc{ --rvc-ink:#141B23; --rvc-text:#2A323C; --rvc-muted:#5F6978; --rvc-rule:#DCE2EA; --rvc-deep:#162033; --rvc-sky:#259AEB; --rvc-green:#58B44C; --rvc-gold:#FED34F; --rvc-blank:#CDD5DE;
  font-family:Roboto,"Segoe UI",system-ui,sans-serif; font-size:16px; line-height:1.55; color:var(--rvc-text); background:#FFFFFF; padding:16px 16px 24px; font-variant-numeric:tabular-nums; }
#rv2-app .rvc-crumb{ display:flex; justify-content:space-between; font-size:13px; color:var(--rvc-muted); font-weight:500; letter-spacing:.02em; }
#rv2-app .rvc-h1{ font-size:22px; line-height:1.25; font-weight:900; color:var(--rvc-ink); margin:8px 0 12px; }
#rv2-app .rvc-strip{ display:flex; height:10px; gap:2px; background:var(--rvc-blank); }
#rv2-app .rvc-strip span{ height:100%; display:block; }
#rv2-app .rvc-you{ background:var(--rvc-deep); } #rv2-app .rvc-win{ background:var(--rvc-green); }
#rv2-app .rvc-cap{ display:flex; justify-content:space-between; font-size:13px; color:var(--rvc-muted); margin:6px 0 24px; }
#rv2-app .rvc-cap b{ color:var(--rvc-ink); font-weight:700; }
/* steps run full width: the number sits inline in the heading (owner 2026-10-08: the rail wasted phone width) */
#rv2-app .rvc-step{ display:flex; flex-direction:column; gap:14px; min-width:0; padding:18px 0 22px; border-top:1px solid var(--rvc-rule); }
#rv2-app .rvc-step:first-of-type{ border-top:0; padding-top:0; }
#rv2-app .rvc-step h2{ font-size:17px; font-weight:700; color:var(--rvc-ink); margin:0; line-height:1.3; display:flex; align-items:center; gap:10px; }
#rv2-app .rvc-step h2 i{ font-style:normal; width:26px; height:26px; border-radius:50%; background:var(--rvc-sky); color:#fff; font-weight:700; font-size:14px; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
#rv2-app .rv2-slot{ display:flex; flex-direction:column; gap:12px; }
#rv2-app .rv2-slot:empty{ display:none; }
#rv2-app .rv2-moved{ display:block; }
#rv2-app .rvc-lead{ font-size:17px; color:var(--rvc-ink); }
#rv2-app .rvc-lead b{ font-weight:700; }
#rv2-app .rvc-p{ font-size:16px; }
#rv2-app .rvc-sub{ font-size:13px; font-weight:700; color:var(--rvc-muted); letter-spacing:.04em; text-transform:uppercase; border-top:1px solid var(--rvc-rule); padding-top:12px; }
#rv2-app .rvc-more{ font-size:15px; font-weight:700; color:var(--rvc-sky); align-self:flex-start; border-bottom:3px solid var(--rvc-gold); padding-bottom:1px; min-height:36px; }
#rv2-app .rvc-cmp{ display:flex; flex-direction:column; gap:10px; }
#rv2-app .rvc-opts{ display:flex; gap:6px; flex-wrap:wrap; }
#rv2-app .rvc-opt{ font-size:13px; font-weight:700; min-height:36px; padding:0 12px; border:2px solid var(--rvc-sky); background:#fff; color:var(--rvc-sky); border-radius:4px; text-align:center; }
#rv2-app .rvc-opt.on{ background:var(--rvc-sky); color:#fff; }
#rv2-app .rvc-three{ display:grid; grid-template-columns:repeat(auto-fit,minmax(90px,1fr)); gap:8px; }
#rv2-app .rvc-three div{ border-top:3px solid var(--rvc-rule); padding-top:8px; }
#rv2-app .rvc-three b{ display:block; font-size:24px; font-weight:900; color:var(--rvc-ink); line-height:1.1; }
#rv2-app .rvc-three span{ font-size:12px; color:var(--rvc-muted); font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
#rv2-app .rvc-three .rvc-me{ border-top-color:var(--rvc-sky); } #rv2-app .rvc-three .rvc-top{ border-top-color:var(--rvc-deep); } #rv2-app .rvc-three .rvc-avg{ border-top-color:var(--rvc-blank); } #rv2-app .rvc-three .rvc-near{ border-top-color:var(--rvc-green); }
#rv2-app .rvc-gain{ display:grid; grid-template-columns:auto minmax(0,1fr); gap:14px; align-items:center; padding:12px 0; border-top:1px solid var(--rvc-rule); }
#rv2-app .rvc-gain:first-child{ border-top:0; padding-top:0; }
#rv2-app .rvc-num{ font-size:32px; font-weight:900; color:var(--rvc-green); line-height:1; letter-spacing:-.02em; min-width:84px; }
#rv2-app .rvc-num small{ display:block; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--rvc-muted); margin-top:3px; }
#rv2-app .rvc-gain p{ font-size:15px; }
#rv2-app .rvc-promise{ display:flex; gap:10px; align-items:center; font-size:15px; color:var(--rvc-ink); }
#rv2-app .rvc-promise i{ width:22px; height:22px; border-radius:50%; background:var(--rvc-green); color:#fff; font-style:normal; font-weight:900; font-size:13px; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
#rv2-app .rvc-task{ display:grid; grid-template-columns:26px minmax(0,1fr) auto; gap:12px; align-items:start; padding:12px 0; border-top:1px solid var(--rvc-rule); }
#rv2-app .rvc-task:first-child{ border-top:0; padding-top:0; }
#rv2-app .rvc-box{ width:22px; height:22px; border:2px solid var(--rvc-sky); margin-top:2px; border-radius:3px; }
#rv2-app .rvc-n{ font-style:normal; width:26px; height:26px; border-radius:50%; background:var(--rvc-deep); color:#fff; font-weight:700; font-size:13px; display:flex; align-items:center; justify-content:center; }
#rv2-app .rvc-t{ font-size:16px; font-weight:500; color:var(--rvc-ink); line-height:1.35; }
#rv2-app .rvc-t small{ display:block; font-size:13px; font-weight:400; color:var(--rvc-muted); margin-top:3px; }
#rv2-app .rvc-when{ font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:var(--rvc-sky); padding-top:4px; white-space:nowrap; }
#rv2-app .rvc-when.rvc-gainv{ font-size:16px; font-weight:900; color:var(--rvc-green); text-transform:none; letter-spacing:0; padding-top:0; }
#rv2-app .rvc-btns{ display:flex; gap:10px; margin-top:6px; }
#rv2-app .rvc-btn{ font-size:16px; font-weight:700; min-height:48px; padding:0 16px; border:2px solid var(--rvc-deep); background:var(--rvc-deep); color:#fff; flex:1; border-radius:4px; text-align:center; }
#rv2-app .rvc-btn.rvc-o{ background:transparent; color:var(--rvc-deep); }
/* the line for parents: green, so a parent finds it at once; one per card, collected later into the parents' report */
#rv2-app .rvc-parent{ margin-top:22px; padding:12px 14px; border-left:4px solid var(--rvc-green); background:#F1F9EF; display:grid; grid-template-columns:auto minmax(0,1fr); gap:12px; font-size:15px; color:var(--rvc-ink); }
#rv2-app .rvc-parent b{ font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:#2E7D32; padding-top:3px; white-space:nowrap; }
#rv2-app .rvc-ask{ display:flex; justify-content:space-between; align-items:center; gap:10px; margin-top:18px; font-size:15px; font-weight:500; color:var(--rvc-ink); }
#rv2-app .rvc-ask span{ display:flex; gap:8px; }
#rv2-app .rvc-ask button{ font-size:14px; font-weight:700; min-height:40px; padding:0 14px; border:2px solid var(--rvc-rule); background:#fff; color:var(--rvc-ink); border-radius:4px; text-align:center; }
#rv2-app .rvc-ask .rvc-y{ background:var(--rvc-green); border-color:var(--rvc-green); color:#fff; }
#rv2-app .rvc-nav{ display:flex; gap:10px; margin-top:18px; }
#rv2-app .rvc-prev{ border:2px solid var(--rvc-rule); color:var(--rvc-ink); flex:0 0 52px; min-height:48px; border-radius:4px; text-align:center; font-size:20px; }
#rv2-app .rvc-next{ background:var(--rvc-deep); color:#fff; flex:1; min-height:48px; border-radius:4px; text-align:center; font-weight:700; font-size:15px; padding:0 14px; }

/* the OLD card inside step 1, unchanged: wide parts scroll left-right, every graph/table has an Expand button */
#rv2-app .rv2-inline{ width:100%; }
#rv2-app .rv2-card-host{ display:block; width:100%; max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; background:#FFFFFF; border:1px solid #DCE2EA; border-radius:6px; padding:10px; }
#rv2-app .rv2-card-host img{ max-width:100%; height:auto; }
#rv2-app .rv2-card-host canvas{ max-width:100% !important; }
#rv2-app .rv2-hscroll{ overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; touch-action:pan-x pan-y; margin:0 -4px 6px; padding-bottom:4px; }
#rv2-app .rv2-hscroll [data-rv2wide] canvas{ max-width:none !important; height:240px !important; max-height:240px !important; }
#rv2-app .rv2-hscroll [data-rv2wide]{ height:240px !important; max-height:240px !important; }
#rv2-app .rv2-hint{ font-size:13px; color:#5F6978; margin:0 0 6px; }
#rv2-app .rv2-tfleg{ display:flex; flex-wrap:wrap; gap:6px 16px; font-size:14px; color:#141B23; margin:0 0 8px; }
#rv2-app .rv2-tftip{ position:absolute; z-index:4; background:#fff; color:#141B23; border:1px solid #D5DBE3; border-radius:8px; padding:6px 10px; font-size:13px; font-weight:500; box-shadow:0 4px 14px rgba(0,0,0,.12); pointer-events:none; white-space:nowrap; }
#rv2-app .rv2-tf-box{ margin:10px 0 4px; }
#rv2-app .rv2-tf-tbl{ table-layout:auto; }
#rv2-app .rv2-tf-tbl td{ vertical-align:middle; padding-top:5px; padding-bottom:5px; white-space:nowrap; }
#rv2-app .rv2-tf-tbl .rv2-qc{ margin:0; }
#rv2-app .ass-pin, body:has(#rv2-app) .ass-pin{ display:none !important; }   /* the old card's always-on callouts sit on top of the bars on a phone (owner 2026-10-13) */
#rv2-app .rvc-planlink{ display:block; font-size:14px; font-weight:700; color:#0C54A0; text-decoration:none; margin:8px 0 14px; }
#rv2-app .rv2-note{ margin:0 0 14px; }
#rv2-app .rv2-refl{ margin:12px 0 6px; font-size:16px; line-height:1.5; color:#141B23; }
#rv2-app .rv2-refl p{ margin:0 0 8px; }
#rv2-app .rv2-refl-dips{ margin:0 0 10px 18px; padding:0; }
#rv2-app .rv2-refl-dips li{ margin:0 0 4px; }
#rv2-app .rv2-refl-txt{ display:block; width:100%; box-sizing:border-box; font:16px/1.5 Roboto,system-ui,sans-serif; color:#141B23; background:#FFFFFF; border:1.5px solid #C9D2DC; border-radius:10px; padding:10px 12px; margin:0 0 10px; resize:vertical; }
#rv2-app .rv2-refl-txt:focus{ outline:none; border-color:#259AEB; }
#rv2-app .rv2-refl-ok{ margin-left:12px; font-size:15px; color:#4CAF50; font-weight:700; }
#rv2-app .rv2-tfleg i{ display:inline-block; width:12px; height:12px; border-radius:50%; margin-right:6px; vertical-align:-1px; }
#rv2-app .rv2-card-host .rv2-chart-wait{ padding:32px 12px; text-align:center; color:#5B5E66; font-size:15px; }
.rv2-expand{ position:absolute !important; top:4px; right:4px; z-index:5; font:700 12px/1 Roboto,system-ui,sans-serif !important; color:#259AEB !important; background:#FFFFFF !important; border:2px solid #259AEB !important; border-radius:4px !important; padding:6px 9px !important; min-height:0 !important; cursor:pointer; letter-spacing:.02em; }

/* ===== old blocks inside the phone card: same font, dark text, no bands, no rounded panels (owner 2026-10-08: 'patchwork') ===== */
#rv2-app .rv2-card-host{ border:0; padding:0; border-radius:0; }
#rv2-app .rv2-card-host, #rv2-app .rv2-card-host *{ font-family:Roboto,"Segoe UI",system-ui,sans-serif !important; }
#rv2-app .rv2-caption{ font-size:13px; font-weight:700; color:#5F6978; letter-spacing:.04em; text-transform:uppercase; margin:0 0 8px; }
#rv2-app .rv2-expand{ position:static !important; display:block; width:max-content !important; max-width:max-content; align-self:flex-end; margin:0 0 8px auto !important; } /* own row above the chart: pinned on top it covered labels like "81st Percentile" (owner 2026-10-11) */
/* c35 Chapter Intelligence */
#rv2-app .ci-wrap{ font-size:15px; color:#2A323C; }
#rv2-app .ci-donuts{ justify-content:space-between; gap:8px; margin:0 0 6px; }
#rv2-app .ci-donut-box{ min-width:0; flex:1; }
#rv2-app .ci-donut-name{ color:#141B23; font-size:14px; }
#rv2-app .ci-cost, #rv2-app .ci-why, #rv2-app .ci-action{ margin:0; padding:0; border:0; border-radius:0; background:transparent; }
#rv2-app .ci-cost-title, #rv2-app .ci-why-title, #rv2-app .ci-action-header{ font-size:13px; font-weight:700; color:#5F6978; letter-spacing:.04em; text-transform:uppercase; margin:0 0 10px; }
/* three plain rows: label left, number right, thin line between (no wrapping, no bare minus) */
#rv2-app .ci-cost-grid{ display:flex; flex-direction:column; gap:0; margin:0; }
#rv2-app .ci-cost-item{ background:transparent; border:0; border-top:1px solid #DCE2EA; border-radius:0; padding:9px 0; text-align:left; display:flex; flex-direction:row-reverse; justify-content:space-between; align-items:baseline; gap:12px; }
#rv2-app .ci-cost-item:first-child{ border-top:0; }
#rv2-app .ci-cost-big{ font-size:22px; font-weight:900; color:#141B23 !important; line-height:1; flex-shrink:0; }
#rv2-app .ci-cost-lbl{ font-size:15px; font-weight:500; color:#141B23; margin:0; }
#rv2-app .ci-cost-subj{ margin-top:14px; padding-top:12px; border-top:1px solid #DCE2EA; }
#rv2-app .ci-cost-subj-val{ min-width:60px; }
#rv2-app .ci-cost-subj-name{ font-size:15px; font-weight:500; color:#141B23; }
#rv2-app .ci-cost-subj-fill{ background:#259AEB !important; }
#rv2-app .ci-cost-subj-val{ color:#2A323C; }
#rv2-app .ci-why-item{ font-size:15px; color:#2A323C; padding:6px 0; }
#rv2-app .ci-tabs{ border:0; padding:0; gap:6px; margin:0 0 12px; border-radius:0; }
#rv2-app .ci-tab{ border:2px solid #259AEB; color:#259AEB; border-radius:4px; font-size:13px; font-weight:700; padding:7px 12px; background:#fff; }
#rv2-app .ci-tab-active{ background:#259AEB; color:#fff; box-shadow:none; }
#rv2-app .ci-group{ margin-bottom:18px; }
#rv2-app .ci-section-bar{ background:transparent !important; border:0 !important; border-radius:0; padding:6px 0 6px; color:#141B23 !important; font-size:15px; position:static; border-bottom:3px solid #DCE2EA !important; }
#rv2-app .ci-bar-revise{ border-bottom-color:#FED34F !important; }
#rv2-app .ci-bar-practice{ border-bottom-color:#259AEB !important; }
#rv2-app .ci-bar-strong{ border-bottom-color:#58B44C !important; }
#rv2-app .ci-gh-count{ font-weight:500; color:#5F6978; }
#rv2-app .ci-section-msg{ font-style:normal; color:#5F6978; font-size:14px; padding:8px 0 6px; }
#rv2-app .ci-row{ padding:8px 0; border-bottom:1px solid #DCE2EA; gap:10px; }
#rv2-app .ci-col-name{ font-size:15px; font-weight:500; color:#141B23; flex:1; }
#rv2-app .ci-col-stats{ font-size:13px; color:#5F6978; text-align:right; }
#rv2-app .ci-st-c{ color:#141B23 !important; font-weight:700; }
#rv2-app .ci-st-w{ color:#E74C3C !important; }
#rv2-app .ci-st-s{ color:#5F6978 !important; }
#rv2-app .ci-expand-btn{ background:transparent; border:0 !important; border-radius:0; color:#259AEB; text-align:left; padding:8px 0; font-weight:700; border-bottom:3px solid #FED34F !important; width:auto; }
#rv2-app .ci-action-step{ padding:10px 0; margin:0; border-radius:0; border-top:1px solid #DCE2EA; background:transparent !important; font-size:15px; color:#2A323C; }
#rv2-app .ci-action-step:first-of-type{ border-top:0; }
#rv2-app .ci-action-num{ background:#162033; width:26px; min-width:26px; height:26px; font-size:13px; }
#rv2-app .ci-action-num-gold{ background:#162033; color:#fff; }
#rv2-app .ci-action-focus{ background:transparent; border-radius:0; text-align:left; padding:10px 0 0; color:#141B23; font-weight:500; border-top:1px solid #DCE2EA; }

/* where you stand: one small table, you in bold */
#rv2-app .rvc-rel{ display:flex; flex-direction:column; font-size:14px; font-variant-numeric:tabular-nums; }
#rv2-app .rvc-rel-h, #rv2-app .rvc-rel-r{ display:grid; grid-template-columns:minmax(0,1.6fr) 1fr 1fr 1fr; gap:6px; align-items:baseline; border-bottom:1px solid #DCE2EA; padding:7px 0; }
#rv2-app .rvc-rel-h span{ font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#5F6978; text-align:right; }
#rv2-app .rvc-rel-r span{ text-align:right; color:#2A323C; }
#rv2-app .rvc-rel-h span:first-child, #rv2-app .rvc-rel-r span:first-child{ text-align:left; }
#rv2-app .rvc-rel-r span:first-child{ font-weight:500; color:#141B23; }
#rv2-app .rvc-rel-r .rvc-rel-you{ font-weight:900; color:#141B23; }
#rv2-app .rvc-rel-h .rvc-rel-you{ color:#259AEB; }
/* c0 Instant Diagnosis */
#rv2-app .id-wrap, #rv2-app .id-card{ font-size:15px; color:#2A323C; }
#rv2-app .id-card{ background:transparent; border:0; border-radius:0; padding:0; box-shadow:none; }
#rv2-app .id-hero{ background:transparent; border:0; border-radius:0; padding:0; box-shadow:none; }
#rv2-app .id-divider{ display:none; }
#rv2-app .id-stat-box{ background:transparent; border:0; border-top:3px solid #DCE2EA; border-radius:0; padding:8px 0 0; text-align:left; }
#rv2-app .id-stat-val{ color:#141B23 !important; font-weight:900; }
#rv2-app .id-stat-lbl{ color:#5F6978; font-size:11px; letter-spacing:.04em; }
#rv2-app .id-gap-bar{ background:transparent; border:0; border-radius:0; padding:8px 0 0; color:#2A323C; text-align:left; }
#rv2-app .id-recover-box{ background:transparent; border:0; border-radius:0; padding:0; display:flex; gap:12px; align-items:center; }
#rv2-app .id-recover-shape{ background:transparent; width:auto; height:auto; border-radius:0; }
#rv2-app .id-recover-num{ color:#58B44C !important; font-size:28px; font-weight:900; }
#rv2-app .id-recover-lbl{ color:#5F6978; font-size:11px; letter-spacing:.06em; }
#rv2-app .id-recover-text{ color:#2A323C; font-weight:400; }
#rv2-app .id-flow-group{ margin:0; }
#rv2-app .id-flow-label{ font-size:13px; font-weight:700; color:#5F6978; letter-spacing:.04em; text-transform:uppercase; margin:0 0 8px; }
#rv2-app .id-flow-label::before{ display:none !important; }
#rv2-app .id-flow-item{ color:#2A323C; padding:6px 0; border-bottom:1px solid #DCE2EA; }
#rv2-app .id-flow-item *{ color:#141B23 !important; }
#rv2-app .id-flow-item::before{ background:#259AEB !important; }
#rv2-app .id-zone-label{ font-size:13px; font-weight:700; color:#5F6978; letter-spacing:.04em; text-transform:uppercase; margin:0 0 8px; }
#rv2-app .id-action{ background:transparent !important; border:0; border-top:1px solid #DCE2EA; border-radius:0; padding:10px 0; margin:0; box-shadow:none; }
#rv2-app .id-num{ background:#162033 !important; color:#fff !important; width:26px; min-width:26px; height:26px; font-size:13px; border-radius:50%; }
#rv2-app .id-action-text{ color:#141B23 !important; font-weight:500; }
#rv2-app .id-reason-text{ color:#5F6978; font-size:13px; }
#rv2-app .id-action-footer a{ color:#259AEB !important; background:transparent !important; border:0 !important; padding:0 !important; font-weight:700; border-bottom:3px solid #FED34F !important; border-radius:0 !important; }
#rv2-app .id-marks-shape{ background:transparent !important; border:0 !important; width:auto; height:auto; }
#rv2-app .id-marks-num{ color:#58B44C !important; font-weight:900; }
#rv2-app .id-marks-label{ color:#5F6978; }
#rv2-app .id-show-more{ color:#259AEB !important; background:transparent !important; border:0 !important; text-align:left; padding:8px 0; font-weight:700; }
#rv2-app .id-closing{ background:transparent !important; border:0; border-top:1px solid #DCE2EA; border-radius:0; padding:12px 0 0; text-align:left; color:#2A323C; }
#rv2-app .id-closing-title{ color:#141B23; font-weight:500; }
#rv2-app .id-closing-range{ color:#58B44C !important; font-weight:900; }
#rv2-app .id-closing-sub{ color:#5F6978; }
#rv2-app .id-hero-exam, #rv2-app .id-hero-top *{ color:#141B23 !important; }
#rv2-app .id-hero-top span[style*="background"]{ background:transparent !important; border:1px solid #DCE2EA; color:#5F6978 !important; }

/* plain rows made from old stat boxes (label left, number right) */
#rv2-app .rv2-rows{ display:flex; flex-direction:column; }
#rv2-app .rv2-row{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding:9px 0; border-top:1px solid #DCE2EA; font-size:15px; color:#141B23; }
#rv2-app .rv2-row:first-child{ border-top:0; }
#rv2-app .rv2-row > :last-child{ font-size:22px; font-weight:900; color:#141B23 !important; line-height:1; }
/* c14 Attempt Strategy */
#rv2-app .ass-wrap{ font-size:15px; color:#2A323C; }
#rv2-app .ass-panel{ padding:0; }
#rv2-app .ass-card, #rv2-app .ass-col{ border:0 !important; border-radius:0; padding:0; margin:0 0 14px; background:transparent !important; box-shadow:none; }
#rv2-app .ass-card-title{ font-size:13px; font-weight:700; color:#5F6978; letter-spacing:.04em; text-transform:uppercase; margin:0 0 10px; display:flex; align-items:center; gap:6px; }
#rv2-app .ass-card-title svg{ width:14px; height:14px; }
#rv2-app .ass-rounds{ flex-direction:column; gap:0; margin:0; }
#rv2-app .ass-round-card{ min-width:0; width:100%; border:0; border-top:1px solid #DCE2EA; border-radius:0; padding:12px 0; }
#rv2-app .ass-round-card:first-child{ border-top:0; padding-top:0; }
#rv2-app .ass-round-title{ font-size:16px; font-weight:700; color:#141B23; }
#rv2-app .ass-round-pct{ font-size:24px; font-weight:900; color:#141B23 !important; }
#rv2-app .ass-gauge-label{ color:#2A323C; }
#rv2-app .ass-stat-box{ background:transparent; border:0; border-top:3px solid #DCE2EA; border-radius:0; padding:8px 0 0; text-align:left; }
#rv2-app .ass-stat-val{ color:#141B23 !important; font-weight:900; }
#rv2-app .ass-stat-lbl{ color:#5F6978; }
#rv2-app .ass-grid{ gap:4px; }
#rv2-app .ass-legend-item{ color:#2A323C; }
#rv2-app .ass-timechart-wrap{ overflow-x:auto; }
#rv2-app .rv2-coach{ display:flex; flex-direction:column; gap:10px; }
#rv2-app .ass-ai-card{ border:0 !important; border-top:1px solid #DCE2EA; border-radius:0; padding:10px 0; background:transparent !important; }
#rv2-app .ass-ai-card-cat{ font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:#5F6978; }
#rv2-app .ass-ai-card-text{ color:#2A323C; }
#rv2-app .ass-panel [style*="background:#0C54A0"], #rv2-app .ass-panel [style*="background: #0C54A0"]{ background:transparent !important; color:#141B23 !important; border-top:1px solid #DCE2EA; border-radius:0 !important; text-align:left !important; padding:10px 0 0 !important; font-weight:500 !important; }
#rv2-app .ass-panel [style*="grid-template-columns"]{ grid-template-columns:1fr !important; }
#rv2-app .ass-panel > div[style*="display:flex"], #rv2-app .ass-panel > div[style*="display: flex"], #rv2-app .ass-row, #rv2-app .ass-two-col{ flex-wrap:wrap !important; }
#rv2-app .ass-col{ flex:1 1 100% !important; min-width:0; }
#rv2-app .ass-gauge-wrap{ margin:0 auto 10px; }

/* c14 Subjects tab on the phone */
#rv2-app .ass-subj-card{ border:0; border-top:1px solid #DCE2EA; border-radius:0; padding:14px 0 6px; margin:0; background:transparent; box-shadow:none; }
#rv2-app .ass-subj-card:first-child{ border-top:0; padding-top:0; }
#rv2-app .ass-subj-header{ margin-bottom:8px; }
#rv2-app .ass-subj-name{ color:#141B23 !important; font-size:17px; font-weight:700; }
#rv2-app .ass-subj-icon{ display:none; }
#rv2-app .ass-subj-stats{ display:flex; gap:16px; margin:0 0 10px; }
#rv2-app .ass-subj-stat{ font-size:12px; color:#5F6978; letter-spacing:.04em; text-transform:uppercase; }
#rv2-app .ass-subj-stat strong{ display:block; font-size:20px; color:#141B23 !important; font-weight:900; letter-spacing:0; text-transform:none; }
#rv2-app .ass-donuts{ display:flex; justify-content:space-between; gap:8px; margin:0 0 4px; }
#rv2-app .ass-donut-box{ flex:1; min-width:0; text-align:center; }
#rv2-app .ass-donut-svg{ width:84px; height:84px; }
#rv2-app .ass-donut-label{ color:#141B23 !important; font-weight:700; font-size:14px; }
#rv2-app .rv2-dtbl{ display:flex; flex-direction:column; margin:6px 0 12px; font-size:14px; font-variant-numeric:tabular-nums; }
#rv2-app .rv2-dtbl-h, #rv2-app .rv2-dtbl-r{ display:grid; grid-template-columns:minmax(0,1.4fr) 1fr 1fr 1fr; gap:6px; padding:6px 0; border-bottom:1px solid #DCE2EA; }
#rv2-app .rv2-dtbl-h span{ font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#5F6978; text-align:right; }
#rv2-app .rv2-dtbl-r span{ text-align:right; color:#2A323C; }
#rv2-app .rv2-dtbl-h span:first-child, #rv2-app .rv2-dtbl-r span:first-child{ text-align:left; color:#141B23; font-weight:500; }
#rv2-app .rv2-dtbl-t span{ font-weight:700; color:#141B23; }
#rv2-app .rv2-note{ font-size:13px; color:#5F6978; margin:0 0 8px; }
#rv2-app .ass-qbox{ border-radius:4px; }
#rv2-app .ass-qbox.ass-correct{ border-color:#58B44C !important; color:#2E7D32 !important; }
#rv2-app .ass-qbox.ass-wrong{ border-color:#E74C3C !important; color:#C0392B !important; }
#rv2-app .ass-qbox.ass-skipped{ border-color:#CDD5DE !important; color:#5F6978 !important; opacity:1; }

/* ===== shell v11: page 1, page 2, top bar (2026-10-09) ===== */
#rv2-app .rvc-ink{ color:#141B23; }
#rv2-app .rvc-small{ font-size:14px; color:#5F6978; }
#rv2-app .rvc-since{ margin:14px 0 0; padding:10px 12px; background:#E4F2FD; font-size:14px; color:#141B23; }
#rv2-app .rvc-mentor{ border-left:4px solid #162033; padding:10px 14px; font-size:16px; color:#141B23; margin:0 0 6px; }
#rv2-app .rvc-fix{ display:grid; grid-template-columns:30px minmax(0,1fr); gap:12px; padding:12px 0; border-bottom:1px solid #DCE2EA; width:100%; text-align:left; }
#rv2-app .rvc-fix:last-of-type{ border-bottom:0; }
#rv2-app .rvc-fix .rvc-n{ width:30px; height:30px; font-size:15px; }
#rv2-app .rvc-fixbody{ display:flex; flex-direction:column; gap:3px; }
#rv2-app .rvc-fix .rvc-t{ font-weight:700; }
#rv2-app .rvc-fixsub{ font-size:14px; color:#2A323C; }
#rv2-app .rvc-fixw{ font-size:14px; color:#5F6978; }
#rv2-app .rvc-fixw b{ color:#58B44C; font-weight:900; }
#rv2-app .rvc-fix .rvc-more{ margin-top:2px; }
#rv2-app .rvc-plan{ display:flex; flex-wrap:wrap; gap:6px; margin:0 0 4px; }
#rv2-app .rvc-wide{ width:100%; margin-top:16px; }
#rv2-app .rvc-bar{ position:absolute; top:0; left:0; right:0; height:56px; z-index:10; background:#162033; color:#fff; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:0 12px; }
#rv2-app .rvc-barbtn{ font-size:15px; font-weight:700; color:#fff; min-height:40px; }
#rv2-app .rvc-bartitle{ font-size:14px; font-weight:700; flex:1; text-align:center; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
#rv2-app .rvc-barright{ font-size:13px; opacity:.8; }
#rv2-app .rvc-jump{ display:flex; gap:6px; flex-wrap:wrap; margin:0 0 6px; }
#rv2-app .rvc-group{ padding:18px 0 6px; border-top:1px solid #DCE2EA; }
#rv2-app .rvc-group:first-of-type{ border-top:0; padding-top:8px; }
#rv2-app .rvc-gq{ font-size:19px; font-weight:900; color:#141B23; margin:0 0 4px; line-height:1.25; }
#rv2-app .rvc-gv{ font-size:14px; color:#2A323C; margin:0 0 6px; }
#rv2-app .rvc-row{ display:grid; grid-template-columns:30px minmax(0,1fr) auto; gap:10px; align-items:baseline; padding:10px 0; border-top:1px solid #DCE2EA; width:100%; text-align:left; font-size:15px; }
#rv2-app .rvc-rownum{ font-size:12px; color:#5F6978; font-weight:700; }
#rv2-app .rvc-rowk{ color:#141B23; font-weight:500; line-height:1.35; }
#rv2-app .rvc-rowst{ font-size:11px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
#rv2-app .rvc-goal{ display:flex; gap:8px; margin-top:8px; }
#rv2-app .rvc-goal input{ font:inherit; font-size:16px; min-height:48px; width:110px; padding:0 12px; border:1px solid #DCE2EA; border-radius:4px; }
#rv2-app .rvc-sheet{ background:#fff; padding:18px 16px 20px; display:flex; flex-direction:column; gap:10px; max-height:85%; overflow-y:auto; font-family:Roboto,"Segoe UI",system-ui,sans-serif; }
#rv2-app .rvc-log{ font:12px/1.5 monospace; color:#2A323C; max-height:40vh; overflow:auto; }
#rv2-app .rvc-toast{ position:absolute; left:20px; right:20px; bottom:80px; z-index:50; background:#162033; color:#fff; border-radius:4px; padding:12px 16px; font-size:14px; font-weight:600; text-align:center; font-family:Roboto,system-ui,sans-serif; }
#rv2-app .rvc-cmp .rvc-sub{ border-top:1px solid #DCE2EA; padding-top:12px; }
#rv2-app .rvc-gl{ font-size:13px; color:#5F6978; margin:0 0 4px; }
#rv2-app .rvc-sub small{ display:block; font-weight:400; text-transform:none; letter-spacing:0; font-size:13px; }
#rv2-app .rvc-t .rvc-more{ display:inline-block; margin-top:6px; font-size:14px; }
#rv2-app .rvc-task .rvc-t small{ margin-bottom:0; }
#rv2-app .rvc-grow{ display:flex; flex-direction:column; gap:2px; width:100%; text-align:left; padding:10px 0; border-top:1px solid #DCE2EA; }
#rv2-app .rvc-grow:first-child{ border-top:0; padding-top:0; }
#rv2-app .rvc-growh{ display:flex; justify-content:space-between; align-items:baseline; gap:10px; }
#rv2-app .rvc-growh b{ font-size:16px; font-weight:700; color:#141B23; }
#rv2-app .rvc-growh span{ font-size:12px; color:#5F6978; white-space:nowrap; }
#rv2-app .rvc-growv{ font-size:14px; color:#2A323C; line-height:1.4; }
#rv2-app .rvc-parentline{ margin-top:18px; font-size:15px; color:#141B23; }
#rv2-app .rvc-parentline b{ font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:#2E7D32; margin-right:8px; }
#rv2-app .rvc-tiles{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
#rv2-app .rvc-tile{ display:flex; flex-direction:column; gap:5px; border:1px solid #DCE2EA; border-radius:4px; padding:10px; text-align:left; min-height:112px; }
#rv2-app .rvc-tile b{ font-size:15px; font-weight:700; color:#141B23; line-height:1.25; }
#rv2-app .rvc-sq{ display:flex; flex-wrap:wrap; gap:3px; }
#rv2-app .rvc-sq i{ width:12px; height:12px; border-radius:2px; display:block; }
#rv2-app .rvc-kw{ font-size:13px; color:#2A323C; line-height:1.35; }
#rv2-app .rvc-tilec{ font-size:11px; color:#5F6978; margin-top:auto; }
#rv2-app .rvc-tilel{ font-size:12px; color:#5F6978; line-height:1.3; }
#rv2-app .rvc-tap{ display:flex; align-items:center; gap:8px; font-size:15px; font-weight:700; color:#141B23; margin:0 0 12px; }
#rv2-app .rvc-tapicon{ width:28px; height:28px; border-radius:50%; background:#259AEB; color:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:15px; font-style:normal; flex-shrink:0; }
#rv2-app .rvc-tile{ position:relative; padding-bottom:30px; }
#rv2-app .rvc-open{ position:absolute; right:10px; bottom:8px; font-size:13px; font-weight:700; color:#259AEB; border-bottom:3px solid #FED34F; }
#rv2-app .rvc-dot{ display:inline-block; width:10px; height:10px; border-radius:2px; margin-right:4px; vertical-align:-1px; }
#rv2-app .rvc-row{ grid-template-columns:30px minmax(0,1fr) auto 14px; }
#rv2-app .rvc-chev{ font-size:20px; color:#259AEB; font-weight:700; line-height:1; }
#rv2-app .rvc-tiles{ margin-bottom:12px; }
#rv2-app .rvc-row{ grid-template-columns:30px minmax(0,1fr) auto auto; align-items:center; }
#rv2-app .rvc-rowopen{ font-size:13px; font-weight:700; color:#259AEB; border-bottom:3px solid #FED34F; padding-bottom:1px; white-space:nowrap; }
/* the Open control: a round blue arrow with the word under it, top-right, same everywhere */
#rv2-app .rvc-row{ grid-template-columns:30px minmax(0,1fr) 44px; align-items:start; }
#rv2-app .rvc-rowk .rvc-rowst{ display:block; margin-top:3px; }
#rv2-app .rvc-rowopen, #rv2-app .rvc-open{ display:flex; flex-direction:column; align-items:center; gap:2px; width:44px; }
#rv2-app .rvc-rowopen i, #rv2-app .rvc-open i{ font-style:normal; width:28px; height:28px; border-radius:50%; background:#259AEB; color:#fff; font-size:20px; font-weight:700; line-height:1; display:flex; align-items:center; justify-content:center; padding-left:2px; }
#rv2-app .rvc-rowopen span, #rv2-app .rvc-open span{ font-size:11px; font-weight:700; color:#259AEB; letter-spacing:.04em; text-transform:uppercase; border-bottom:2px solid #FED34F; }
#rv2-app .rvc-open{ position:absolute; right:8px; top:8px; bottom:auto; border-bottom:0; }
#rv2-app .rvc-tile{ padding-bottom:10px; padding-right:56px; }
#rv2-app .rvc-chev{ display:none; }
#rv2-app .rvc-row{ grid-template-columns:30px minmax(0,1fr) 64px; }
#rv2-app .rvc-rowopen, #rv2-app .rvc-open{ width:64px; }
#rv2-app .rvc-rowopen span, #rv2-app .rvc-open span{ text-transform:none; letter-spacing:0; font-size:11px; white-space:nowrap; }
#rv2-app .rvc-tile{ padding-right:72px; }
#rv2-app .rvc-tile{ padding-right:10px; padding-bottom:52px; }
#rv2-app .rvc-open{ top:auto; bottom:8px; right:8px; }
#rv2-app .rvc-tilec{ margin-top:auto; padding-right:70px; }
/* See details: plain blue text with the gold underline, on its own line at the right. No circle. */
#rv2-app .rvc-row{ grid-template-columns:30px minmax(0,1fr); align-items:start; row-gap:6px; }
#rv2-app .rvc-rowopen{ grid-column:2; justify-self:end; width:auto; flex-direction:row; }
#rv2-app .rvc-rowopen i, #rv2-app .rvc-open i{ display:none; }
#rv2-app .rvc-rowopen span, #rv2-app .rvc-open span{ font-size:14px; font-weight:700; color:#259AEB; border-bottom:3px solid #FED34F; padding-bottom:1px; }
#rv2-app .rvc-rowopen span::after, #rv2-app .rvc-open span::after{ content:" →"; }
#rv2-app .rvc-open{ position:absolute; right:10px; bottom:10px; top:auto; width:auto; flex-direction:row; }
#rv2-app .rvc-tile{ padding-bottom:42px; padding-right:10px; }
#rv2-app .rvc-tilec{ padding-right:0; }
#rv2-app .rvc-ico{ width:22px; height:22px; color:#259AEB; flex-shrink:0; margin-left:6px; }
#rv2-app .rvc-rowopen, #rv2-app .rvc-open{ display:inline-flex; flex-direction:row; align-items:center; }
#rv2-app .rvc-rowopen span::after, #rv2-app .rvc-open span::after{ content:none; }
/* page 1 squares: back to the compact look with Open › at the corner (owner 2026-10-09) */
#rv2-app .rvc-tile{ padding:10px; padding-bottom:30px; min-height:112px; }
#rv2-app .rvc-open{ position:absolute; right:10px; bottom:8px; top:auto; display:inline; width:auto; font-size:13px; font-weight:700; color:#259AEB; border-bottom:3px solid #FED34F; padding-bottom:1px; }
#rv2-app .rvc-tilec{ padding-right:0; }
#rv2-app .rvc-rowopen{ border-bottom:0; padding-bottom:0; }
#rv2-app .rvc-row{ row-gap:4px; }
/* page 2 rows, tight: tag + title, then status left and See details right on one line */
#rv2-app .rvc-row{ grid-template-columns:30px minmax(0,1fr); row-gap:2px; padding:8px 0; align-items:start; }
#rv2-app .rvc-rowk{ font-size:15px; line-height:1.3; }
#rv2-app .rvc-tag{ display:block; font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:#162033; margin-bottom:1px; }
#rv2-app .rvc-rowfoot{ grid-column:2; display:flex; justify-content:space-between; align-items:center; }
#rv2-app .rvc-rowfoot .rvc-rowst{ display:inline; margin:0; }
#rv2-app .rvc-rowopen{ justify-self:auto; }
#rv2-app .rvc-rowopen span{ font-size:13px; border-bottom-width:2px; }
#rv2-app .rvc-ico{ width:18px; height:18px; margin-left:4px; }
#rv2-app .rvc-rownum{ padding-top:2px; }
/* experiment (owner 2026-10-09): tag blue, See details green with the gold line, icon = circle + arrow in green */
#rv2-app .rvc-tag{ color:#259AEB; }
#rv2-app .rvc-rowopen span{ color:#2E7D32; border-bottom:2px solid #FED34F; }
#rv2-app .rvc-rowopen .rvc-ico{ color:#2E7D32; width:20px; height:20px; }
#rv2-app .rvc-rowopen .rvc-ico{ color:#E74C3C; }
#rv2-app .rvc-rowopen span{ color:#259AEB; }
/* c1 Performance Scan Report in our dress (class names carry an instance id, so attribute selectors) */
#rv2-app [class*="prc-wrap"]{ font-size:15px; color:#2A323C; background:transparent; border:0; box-shadow:none; }
#rv2-app [class*="prc-rank-hero"]{ background:transparent; padding:6px 0 10px; text-align:left; display:flex; align-items:baseline; gap:10px; }
#rv2-app [class*="prc-rank-label"]{ font-size:13px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:#5F6978; }
#rv2-app [class*="prc-rank-value"]{ font-size:28px; font-weight:900; color:#141B23 !important; line-height:1; }
#rv2-app [class*="prc-rank-total"]{ font-size:15px; color:#2A323C; }
#rv2-app [class*="prc-quick-stats"]{ display:grid; grid-template-columns:repeat(4,1fr); gap:6px; padding:0 0 10px; background:transparent; border:0; }
#rv2-app [class*="prc-stat-card"]{ background:transparent; border:0; border-top:3px solid #DCE2EA; border-radius:0; padding:8px 0 0; text-align:left; }
#rv2-app [class*="prc-stat-value"]{ font-size:20px; font-weight:900; color:#141B23 !important; line-height:1.1; }
#rv2-app [class*="prc-stat-label"]{ font-size:11px; color:#5F6978; letter-spacing:.04em; text-transform:uppercase; }
#rv2-app [class*="prc-section"]{ background:transparent; border:0; box-shadow:none; border-radius:0; margin:0 0 12px; }
#rv2-app [class*="prc-section-body"]{ padding:0; }
#rv2-app [class*="prc-section-icon"]{ display:none; }
#rv2-app [class*="prc-compare-table"], #rv2-app [class*="prc-table"]{ width:100%; font-size:14px; border-collapse:collapse; }
#rv2-app [class*="prc-compare-table"] th, #rv2-app [class*="prc-table"] th{ font-size:11px; letter-spacing:.06em; text-transform:uppercase; color:#5F6978; text-align:right; padding:6px 0; border-bottom:1px solid #DCE2EA; background:transparent; }
#rv2-app [class*="prc-compare-table"] td, #rv2-app [class*="prc-table"] td{ padding:7px 0; border-bottom:1px solid #DCE2EA; text-align:right; color:#2A323C !important; background:transparent; }
#rv2-app [class*="prc-compare-table"] th:first-child, #rv2-app [class*="prc-compare-table"] td:first-child, #rv2-app [class*="prc-table"] td:first-child{ text-align:left; color:#141B23 !important; font-weight:500; }
#rv2-app [class*="prc-compare-table"] td:last-child{ font-weight:900; color:#141B23 !important; }
#rv2-app [class*="prc-better-than"]{ background:transparent; border:0; padding:10px 0 0; text-align:left; font-size:15px; color:#141B23; }
#rv2-app [class*="prc-better-than"] *{ color:#141B23 !important; font-size:15px !important; display:inline; }
#rv2-app [class*="prc-negative-card"]{ background:transparent; border:0; border-radius:0; padding:0; margin:0; }
#rv2-app [class*="prc-negative-grid"]{ display:flex; flex-direction:column; gap:0; }
#rv2-app [class*="prc-negative-item"]{ display:flex; justify-content:space-between; align-items:baseline; padding:8px 0; border-top:1px solid #DCE2EA; background:transparent; border-radius:0; }
#rv2-app [class*="prc-negative-item"]:first-child{ border-top:0; }
#rv2-app [class*="prc-negative-subject"]{ font-size:15px; color:#141B23; font-weight:500; }
#rv2-app [class*="prc-negative-value"]{ font-size:20px; font-weight:900; color:#141B23 !important; }
#rv2-app .rv2-dtbl-c1 .rv2-dtbl-h, #rv2-app .rv2-dtbl-c1 .rv2-dtbl-r{ grid-template-columns:minmax(0,1.3fr) repeat(5,1fr); gap:4px; }
#rv2-app .rv2-dtbl-c1 .rv2-dtbl-h span{ font-size:10px; }
/* page 1 sheet fills the screen */
#rv2-app .rvc-scroll > .rvc{ min-height:100%; }
#rv2-app .rvc-scroll{ background:#FFFFFF; }
/* the same dress inside the full-screen (Open bigger) view, which sits outside #rv2-app */
#rv2-chart .rv2-caption{ font-size:13px; font-weight:700; color:#5F6978; letter-spacing:.04em; text-transform:uppercase; margin:0 0 8px; }
#rv2-chart .rv2-dtbl{ display:flex; flex-direction:column; margin:6px 0 12px; font-size:14px; font-variant-numeric:tabular-nums; }
#rv2-chart .rv2-dtbl-h, #rv2-chart .rv2-dtbl-r{ display:grid; grid-template-columns:minmax(0,1.4fr) 1fr 1fr 1fr; gap:6px; padding:6px 0; border-bottom:1px solid #DCE2EA; }
#rv2-chart .rv2-dtbl-c1 .rv2-dtbl-h, #rv2-chart .rv2-dtbl-c1 .rv2-dtbl-r{ grid-template-columns:minmax(0,1.3fr) repeat(5,1fr); gap:4px; }
#rv2-chart .rv2-dtbl-h span{ font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#5F6978; text-align:right; }
#rv2-chart .rv2-dtbl-r span{ text-align:right; color:#2A323C; }
#rv2-chart .rv2-dtbl-h span:first-child, #rv2-chart .rv2-dtbl-r span:first-child{ text-align:left; color:#141B23; font-weight:500; }
#rv2-chart .rv2-dtbl-t span{ font-weight:700; color:#141B23; }
#rv2-chart .rv2-rows{ display:flex; flex-direction:column; }
#rv2-chart .rv2-row{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding:9px 0; border-top:1px solid #DCE2EA; font-size:15px; color:#141B23; }
#rv2-chart .rv2-row > :last-child{ font-size:22px; font-weight:900; color:#141B23 !important; line-height:1; }
#rv2-chart .rv2-note{ font-size:13px; color:#5F6978; margin:0 0 8px; }
#rv2-chart [class*="prc-quick-stats"]{ display:grid; grid-template-columns:repeat(4,1fr); gap:6px; padding:0 0 10px; background:transparent; border:0; }
#rv2-chart [class*="prc-stat-card"]{ background:transparent; border:0; border-top:3px solid #DCE2EA; border-radius:0; padding:8px 0 0; text-align:left; }
#rv2-chart [class*="prc-stat-value"]{ font-size:20px; font-weight:900; color:#141B23 !important; line-height:1.1; }
#rv2-chart [class*="prc-stat-label"]{ font-size:11px; color:#5F6978; letter-spacing:.04em; text-transform:uppercase; }
#rv2-chart [class*="prc-table"], #rv2-chart [class*="prc-compare-table"]{ width:100%; font-size:14px; border-collapse:collapse; }
#rv2-chart [class*="prc-table"] td, #rv2-chart [class*="prc-compare-table"] td{ padding:7px 0; border-bottom:1px solid #DCE2EA; text-align:right; color:#2A323C !important; }
#rv2-chart [class*="prc-table"] td:first-child, #rv2-chart [class*="prc-compare-table"] td:first-child{ text-align:left; color:#141B23 !important; }
/* c1 Record / Score lists as plain rows */
#rv2-app [class*="prc-grid-two"]{ display:flex; flex-direction:column; gap:10px; margin:0 0 12px; }
#rv2-app [class*="prc-table"] td:last-child{ font-weight:700; color:#141B23 !important; }
#rv2-chart .rv2-card-host.rv2-zoomed{ border:0; padding:0; }
#rv2-chart .rv2-zoomed canvas{ min-height:0; }
#rv2-chart .rv2-zoomed .rv2-expand{ display:none; }
#rv2-chart .rv2-chart-body{ padding:12px 16px 24px; }
#rv2-chart .rv2-chart-zoom > *{ min-width:0; max-width:100%; }
#rv2-chart .rv2-zoomed{ overflow-x:auto; }
#rv2-chart .rv2-zoomed table{ max-width:100%; }
/* c45 Mark Leakage (card Negatives): no yellow bands, no coloured tabs */
#rv2-app .mla-wrap{ font-size:15px; color:#2A323C; }
#rv2-app .mla-summary, #rv2-app .mla-whatif, #rv2-app .mla-section, #rv2-app .mla-traps, #rv2-app .mla-action{ background:transparent !important; border:0 !important; border-radius:0; padding:0; margin:0 0 12px; box-shadow:none; }
#rv2-app .mla-tabs{ display:flex; gap:6px; flex-wrap:wrap; background:transparent; border:0; padding:0; margin:0 0 10px; }
#rv2-app .mla-tab{ border:2px solid #259AEB !important; color:#259AEB !important; background:#fff !important; border-radius:4px; font-size:13px; font-weight:700; padding:7px 12px; box-shadow:none; }
#rv2-app .mla-tab.mla-tab-active, #rv2-app .mla-tab.active{ background:#259AEB !important; color:#fff !important; }
#rv2-app .mla-group > div:first-child, #rv2-app .mla-group-head{ background:transparent !important; color:#141B23 !important; border:0 !important; border-bottom:3px solid #FED34F !important; border-radius:0; padding:6px 0; font-weight:700; }
#rv2-app .mla-wrap [style*="background:#fef"], #rv2-app .mla-wrap [style*="background: #fef"], #rv2-app .mla-wrap [style*="background:#fff"], #rv2-app .mla-wrap [style*="background:#FFF"]{ background:transparent !important; }
#rv2-app .mla-wrap [style*="border-radius"]{ border-radius:0 !important; }
#rv2-app .mla-wrap h3, #rv2-app .mla-wrap h4{ font-size:13px; font-weight:700; color:#5F6978; letter-spacing:.04em; text-transform:uppercase; margin:0 0 8px; }
#rv2-app .mla-wrap .mla-big, #rv2-app .mla-wrap [class*="-big"]{ color:#141B23 !important; font-weight:900; }
/* a stuck tooltip never shows inside the report */
#rv2-app .ass-tooltip{ display:none !important; }
#rv2-app .rv2-legend, #rv2-chart .rv2-legend{ display:flex; gap:14px; flex-wrap:wrap; font-size:13px; color:#2A323C; margin:6px 0 4px; }
#rv2-app .rv2-legend i, #rv2-chart .rv2-legend i{ display:inline-block; width:12px; height:3px; margin-right:6px; vertical-align:middle; border-radius:2px; }
/* the old cards' own legends go when ours is there */
#rv2-app .rv2-legend + div[style*="justify-content:center"], #rv2-app .rv2-legend ~ div[style*="gap:20px"]{ display:none; }
/* rank in a red circle (card 1, and the old report card) */
#rv2-app [class*="prc-rank-value"]{ display:inline-flex; align-items:center; justify-content:center; width:56px; height:56px; border-radius:50%; border:3px solid #E74C3C; color:#E74C3C !important; font-size:24px; }
#rv2-app [class*="prc-rank-hero"]{ align-items:center; }
/* c58 cumulative marks: plain rows for the three numbers, no coloured boxes */
#rv2-app .rv2-c58boxes{ display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin:0 0 10px; }
#rv2-app .rv2-c58box{ border-top:3px solid #DCE2EA; padding:8px 0 0; }
#rv2-app .rv2-c58boxes .rv2-c58box:first-child{ border-top-color:#259AEB; }
#rv2-app .rv2-c58boxes .rv2-c58box:nth-child(2){ border-top-color:#E74C3C; }
#rv2-app .rv2-c58lab{ font-size:11px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; color:#5F6978; }
#rv2-app .rv2-c58val{ font-size:20px; font-weight:900; color:#141B23 !important; line-height:1.15; }
#rv2-app .rv2-c58val ~ .rv2-c58val{ font-size:12px; font-weight:400; color:#5F6978 !important; }
#rv2-app [data-rv2host="c58"] .rv2-card-host > div[style*="background"]{ background:transparent !important; }
#rv2-app .rvc-part{ font-size:16px; font-weight:700; color:#0C54A0; margin:14px 0 6px; padding-top:8px; border-top:1px solid #DCE2EA; }
#rv2-app .rvc-gl + .rvc-part{ border-top:0; padding-top:0; margin-top:8px; }
#rv2-app .rvc-scroll > .rvc{ padding-bottom:88px; } /* room under the last line so the round theme button never covers text (QA 2026-10-11) */
/* ── owner 2026-10-12: lighter card bottom, parents box with an icon (no thick border), status word, no sideways slip ── */
#rv2-app .rvc-parent{ border-left:0; border-radius:10px; background:#F4F6F9; padding:14px 16px; align-items:start; }
#rv2-app .rvc-parent b{ display:inline-flex; align-items:center; gap:6px; color:#3B4A5C; font-size:13px; }
#rv2-app .rvc-parent b::before{ content:""; width:20px; height:20px; flex:0 0 20px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23259AEB' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='6' r='2.6'/%3E%3Ccircle cx='16.5' cy='7.5' r='2.1'/%3E%3Cpath d='M3.5 20v-3.2A4.5 4.5 0 0 1 8 12.3a4.5 4.5 0 0 1 4.5 4.5V20'/%3E%3Cpath d='M13.6 14.2a3.6 3.6 0 0 1 6.9 1.5V20'/%3E%3C/svg%3E") center/contain no-repeat; }
#rv2-app .rvc-parent span{ font-size:16px; line-height:1.5; }
#rv2-app .rvc-next{ background:#FFFFFF; color:var(--rvc-deep); border:1px solid var(--rvc-rule); font-weight:600; font-size:16px; }
#rv2-app .rvc-prev{ border-width:1px; }
#rv2-app .rvc-st{ font-weight:700; margin-right:8px; }
#rv2-app .rvc-st:empty{ display:none; }
/* the card scrolls up/down only; a wide old table slides sideways inside its own box, the page never slips left/right */
#rv2-app .rvc-scroll{ overscroll-behavior-x:none; touch-action:pan-y; }
#rv2-app .rv2-card-host{ overflow-x:hidden; }
#rv2-app .rv2-card-host table:not(.rv2-dp-tbl){ display:block; max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; touch-action:pan-x pan-y; }
#rv2-app [data-rv2host="c16"] table:not(.rv2-dp-tbl){ display:none !important; } /* card 6 + card 42: the difficulty table repeats the bar chart above it and broke on phones (tall empty rows, last column cut) — owner 2026-10-12 */
/* difficulty plan (c16 table rebuilt): one row per level + what to do — owner 2026-10-12 */
#rv2-app .rv2-diffplan{ margin:14px 0 6px; text-align:left; }
#rv2-app .rv2-dp-row{ padding:12px 0; border-top:1px solid #E6EAF0; }
#rv2-app .rv2-dp-h{ display:flex; flex-wrap:wrap; justify-content:space-between; gap:4px 12px; align-items:baseline; }
#rv2-app .rv2-dp-h b{ font-size:16px; font-weight:700; color:#141B23; }
#rv2-app .rv2-dp-h span{ font-size:16px; color:#5F6978; }
#rv2-app .rv2-dp-row p{ margin:6px 0 0; font-size:16px; line-height:1.5; color:#2A323C; }
/* card 2: you vs topper, question by question (counted from the table) — red only on the losing lines (owner 2026-10-12) */
#rv2-app .rv2-vstop{ margin:4px 0 8px; }
#rv2-app .rv2-vs-row{ display:flex; align-items:baseline; gap:12px; padding:9px 0; border-top:1px solid #E6EAF0; font-size:16px; line-height:1.45; color:#2A323C; }
#rv2-app .rv2-vs-row b{ flex:0 0 44px; text-align:right; font-size:22px; font-weight:800; color:#141B23; }
#rv2-app .rv2-vs-row.bad b{ color:#C0392B; }
#rv2-app .rv2-dp-q{ display:flex; gap:10px; margin-top:6px; font-size:16px; line-height:1.5; color:#2A323C; }
#rv2-app .rv2-dp-q b{ flex:0 0 52px; font-weight:700; color:#5F6978; }
#rv2-app .rv2-dp-q.bad b{ color:#C0392B; }
#rv2-app .rv2-dp-q.good b{ color:#2E7D32; }
#rv2-app .rv2-dp-q span{ flex:1; min-width:0; word-spacing:2px; }
#rv2-app .rv2-dp-row p b{ font-weight:700; color:#141B23; }
/* card 6 difficulty table: 2 columns, question numbers as chips in theme colours (owner 2026-10-12) */
#rv2-app .rv2-dp-tbl{ width:100%; border-collapse:collapse; margin:12px 0 4px; table-layout:fixed; font-size:16px; }
#rv2-app .rv2-dp-tbl thead th{ text-align:left; padding:10px 0 8px; border-bottom:2px solid #DCE2EA; font-weight:400; }
#rv2-app .rv2-dp-tbl thead th b{ font-size:17px; font-weight:800; color:#141B23; margin-right:10px; }
#rv2-app .rv2-dp-tbl thead th span{ color:#5F6978; font-size:16px; }
#rv2-app .rv2-dp-tbl tbody th{ width:92px; text-align:left; vertical-align:top; padding:10px 8px 10px 0; font-weight:600; color:#141B23; border-bottom:1px solid #EEF1F5; }
#rv2-app .rv2-dp-tbl tbody td{ padding:8px 0; border-bottom:1px solid #EEF1F5; line-height:1.5; color:#2A323C; }
#rv2-app .rv2-qc{ display:inline-block; font-style:normal; font-weight:700; font-size:15px; line-height:1; padding:6px 8px; margin:2px 4px 2px 0; border-radius:6px; }
#rv2-app .rv2-qc.w{ background:#E74C3C; color:#FFFFFF; }
#rv2-app .rv2-qc.b{ background:#FED34F; color:#141B23; }
#rv2-app .rv2-qc.r{ background:#27AE60; color:#FFFFFF; } /* bright green, same family as the red/blue/yellow (owner 2026-10-12) */
#rv2-app .rv2-dp-tbl col.rv2-dp-c1{ width:92px; }
#rv2-app .rv2-slots{ margin:14px 0 6px; text-align:left; }
#rv2-app .rv2-sl-tbl{ width:100%; border-collapse:collapse; font-size:15px; table-layout:fixed; }
#rv2-app .rv2-sl-tbl th{ text-align:left; font-size:13px; font-weight:700; color:#5F6978; letter-spacing:.03em; text-transform:uppercase; padding:6px 4px 8px 0; border-bottom:2px solid #DCE2EA; }
#rv2-app .rv2-sl-tbl td{ padding:9px 4px 9px 0; border-bottom:1px solid #EEF1F5; color:#2A323C; line-height:1.4; }
#rv2-app .rv2-sl-tbl th:nth-child(1), #rv2-app .rv2-sl-tbl td:nth-child(1){ width:22%; }
#rv2-app .rv2-sl-tbl th:nth-child(2), #rv2-app .rv2-sl-tbl td:nth-child(2){ width:17%; }
#rv2-app .rv2-sl-tbl th:nth-child(3), #rv2-app .rv2-sl-tbl td:nth-child(3){ width:24%; }
#rv2-app .rv2-sl-tbl .rv2-sl-sp{ padding-right:6px; }
#rv2-app .rv2-sl-tbl .rv2-sl-sp i{ display:inline-block; width:7px; height:7px; border-radius:50%; background:#259AEB; margin:0 2px 2px 0; }
#rv2-app .rv2-sl-tbl .rv2-sl-sp i.x{ background:#E74C3C; }
#rv2-app .rv2-sl-tbl .rv2-sl-sp small{ font-size:12px; color:#5F6978; }
#rv2-app .rv2-sl-tbl .rv2-sl-c{ text-align:center; padding-left:6px; padding-right:6px; }
#rv2-app .rv2-sl-tbl th:nth-child(5), #rv2-app .rv2-sl-tbl td:nth-child(5){ width:14%; text-align:right; padding-right:0; }
#rv2-app .rv2-sl-tbl tr.rv2-sl-loss td{ color:#E74C3C; font-weight:700; background:rgba(231,76,60,.06); }
#rv2-app .rv2-sl-tbl tr.rv2-sl-idle td{ color:#9AA3AE; }
#rv2-app .rv2-sl-muted{ color:#9AA3AE; font-weight:400; }
#rv2-app .rv2-sl-note{ margin:10px 0 0; font-size:15px; color:#2A323C; line-height:1.5; }
/* question pop-up from a chip (owner 2026-10-12) */
.rv2-qc[data-q]{ cursor:pointer; -webkit-tap-highlight-color:transparent; }
#rv2-qpop{ display:none; position:fixed; inset:0; z-index:100000; background:rgba(20,27,35,.55); align-items:flex-end; justify-content:center; }
#rv2-qpop.on{ display:flex; }
#rv2-qpop .rv2-qp-box{ background:#FFFFFF; width:100%; max-width:560px; max-height:88vh; max-height:88dvh; border-radius:14px 14px 0 0; display:flex; flex-direction:column; font-family:Roboto,"Segoe UI",system-ui,sans-serif; }
#rv2-qpop .rv2-qp-bar{ display:flex; align-items:center; justify-content:space-between; padding:12px 16px; border-bottom:1px solid #E6EAF0; }
#rv2-qpop .rv2-qp-bar b{ font-size:17px; color:#141B23; }
#rv2-qpop .rv2-qp-x{ border:1px solid #DCE2EA; background:#FFFFFF; color:#141B23; border-radius:8px; padding:8px 12px; font-size:16px; font-weight:600; cursor:pointer; }
#rv2-qpop .rv2-qp-body{ padding:14px 16px 24px; overflow-y:auto; -webkit-overflow-scrolling:touch; font-size:16px; line-height:1.55; color:#2A323C; }
#rv2-qpop .rv2-qp-body img{ max-width:100% !important; height:auto !important; }
#rv2-qpop .rv2-qp-wait{ padding:28px 4px; text-align:center; color:#5F6978; font-size:16px; }
@media (min-width:768px){ #rv2-qpop{ align-items:center; } #rv2-qpop .rv2-qp-box{ border-radius:14px; } }
/* card dropdown in the top bar (owner 2026-10-12) */
#rv2-app .rv2-cardmenu{ position:relative; display:inline-flex; align-items:center; gap:6px; cursor:pointer; color:inherit; font:inherit; }
#rv2-app .rv2-cardmenu b{ font-size:14px; line-height:1; opacity:.9; }
#rv2-app .rv2-cardmenu select{ position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; font-size:16px; }
/* card 3: marks gauge + rank centred with Refresh Rank beside it (owner 2026-10-12) */
#rv2-app .rv2-gauge{ position:relative; width:220px; max-width:100%; margin:6px auto 14px; }
#rv2-app .rv2-gauge svg{ display:block; width:100%; height:auto; }
#rv2-app .rv2-gauge-t{ position:absolute; left:0; right:0; bottom:4px; text-align:center; line-height:1.1; }
#rv2-app .rv2-gauge-t b{ display:block; font-size:34px; font-weight:800; color:#141B23; }
#rv2-app .rv2-gauge-t span{ font-size:16px; color:#5F6978; }
#rv2-app [class*="prc-rank-hero"]{ display:flex !important; flex-wrap:wrap; justify-content:center !important; align-items:center; gap:10px 16px; text-align:center; width:100%; }
#rv2-app [class*="prc-rank-display"]{ margin:0 !important; text-align:center; }
#rv2-app [class*="prc-rank-refresh"]{ font-size:16px !important; }
/* card 3 (owner 2026-10-12): grey line between gauge and rank, one centred column, Refresh Rank under the rank */
#rv2-app .rv2-gauge{ margin-bottom:18px; }
#rv2-app [class*="prc-rank-hero"]{ flex-direction:column !important; gap:10px !important; border-top:1px solid #DCE2EA; padding-top:18px !important; margin-top:4px; }
#rv2-app [class*="prc-rank-display"]{ display:flex; flex-direction:column; align-items:center; }
#rv2-app [class*="prc-rank-refresh"]{ margin:0 auto !important; }
/* card 3 rank: position bar + medals for 1-3 (owner 2026-10-12) */
#rv2-app .rv2-rank{ width:100%; max-width:320px; margin:0 auto; text-align:center; }
#rv2-app .rv2-rank-lbl{ font-size:14px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:#5F6978; }
#rv2-app .rv2-rank-big{ display:flex; flex-wrap:wrap; align-items:baseline; justify-content:center; gap:4px 10px; margin:6px 0 12px; }
#rv2-app .rv2-rank-big b{ font-size:40px; font-weight:800; line-height:1; color:#141B23; }
#rv2-app .rv2-rank-big span{ font-size:16px; color:#5F6978; }
#rv2-app .rv2-rank-bar{ position:relative; height:8px; border-radius:4px; background:#DCE2EA; margin:0 10px; }
#rv2-app .rv2-rank-fill{ position:absolute; left:0; top:0; bottom:0; border-radius:4px; background:#259AEB; }
#rv2-app .rv2-rank-dot{ position:absolute; top:50%; width:20px; height:20px; margin:-10px 0 0 -10px; border-radius:50%; background:#259AEB; border:3px solid #FFFFFF; box-shadow:0 0 0 1px #259AEB; }
#rv2-app .rv2-rank-ends{ display:flex; justify-content:space-between; margin-top:8px; font-size:14px; color:#5F6978; }
#rv2-app .rv2-medal{ align-self:center; display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:50%; font-style:normal; font-weight:800; font-size:16px; color:#141B23; box-shadow:inset 0 0 0 3px rgba(255,255,255,.55); }
#rv2-app .rv2-medal.m1{ background:#FED34F; }
#rv2-app .rv2-medal.m2{ background:#C9D1DB; }
#rv2-app .rv2-medal.m3{ background:#D99A5B; }

/* owner 2026-10-15: TABLETS get this report too. A touch screen 768px+ fills the whole screen (no phone-sized box);
   the text column stays phone-like in width so lines do not run across the screen. Computers keep the classic dashboard. */
@media (min-width:768px) and (hover:none) and (pointer:coarse){
  #rv2-app{ display:block; padding:0; background:#EEF1F5; }
  #rv2-app .rv2-frame{ width:100%; max-width:none; height:100vh; height:100dvh; border-radius:0; margin:0; }
  #rv2-app .rvc{ max-width:760px; margin-left:auto; margin-right:auto; }
}
html.rv2-touch #rv2-app{ display:block; padding:0; background:#EEF1F5; }
html.rv2-touch #rv2-app .rv2-frame{ width:100%; max-width:none; height:100vh; height:100dvh; border-radius:0; margin:0; }
html.rv2-touch #rv2-app .rvc{ max-width:760px; margin-left:auto; margin-right:auto; }
