/* ---- DM Sans (same files the blended rate calc ships) ---- */
@font-face {
	font-family: 'DM Sans';
	font-weight: 400;
	src: url('https://d2w998roo7cij6.cloudfront.net/cf-cdn/assets/fonts/DMSans-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'DM Sans';
	font-weight: 500;
	src: url('https://d2w998roo7cij6.cloudfront.net/cf-cdn/assets/fonts/DMSans-Medium.ttf') format('truetype');
}
@font-face {
	font-family: 'DM Sans';
	font-weight: 600;
	src: url('https://d2w998roo7cij6.cloudfront.net/cf-cdn/assets/fonts/DMSans-SemiBold.ttf') format('truetype');
}
@font-face {
	font-family: 'DM Sans';
	font-weight: 700;
	src: url('https://d2w998roo7cij6.cloudfront.net/cf-cdn/assets/fonts/DMSans-Bold.ttf') format('truetype');
}

/* ---- Page shell ---- */
body.eqrv2-body {
	margin: 0;
	background: #FAFAFA;
	font-family: 'DM Sans', sans-serif;
	color: #181D27;
	-webkit-font-smoothing: antialiased;
}
.eqrv2 *, .eqrv2 *::before, .eqrv2 *::after,
.eqrv2-sheet *, .eqrv2-sheet *::before, .eqrv2-sheet *::after { box-sizing: border-box; }
.eqrv2 {
	max-width: 480px;
	margin: 0 auto;
	padding: 24px 16px;
	display: flex;
	flex-direction: column;
	gap: 15px;
	min-height: 100vh;
	font-size: 16px;
	line-height: 1.45;
}
.eqrv2 button, .eqrv2-sheet button { font-family: inherit; }
.eqrv2 a { color: #2076C5; }
/* The sheet sits outside the .eqrv2 wrapper (fixed-position sibling), so the
   utility classes must not be scoped to it. */
.eqrv2-hidden { display: none !important; }
.eqrv2-stack { display: flex; flex-direction: column; gap: 15px; }
.eqrv2 :focus-visible, .eqrv2-sheet :focus-visible { outline: 2px solid #278AE5; outline-offset: 2px; border-radius: 4px; }
/* Inputs sit inside .eqrv2-inputwrap, which paints its own focus ring via
   :focus-within - a second outline on the inner input doubles the border. */
.eqrv2 .eqrv2-input:focus-visible, .eqrv2-sheet .eqrv2-input:focus-visible { outline: none; }

/* ---- Header: back / restart / progress dots ---- */
.eqrv2-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 32px;
}
.eqrv2-header-left { display: flex; align-items: center; gap: 6px; }
.eqrv2-navbtn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px 12px;
	border: 0;
	background: transparent;
	color: #414651;
	font-size: 14px;
	font-weight: 500;
	cursor: pointer;
	border-radius: 8px;
}
.eqrv2-navbtn:hover { background: #F5F5F5; }
.eqrv2-navbtn svg { width: 16px; height: 16px; }
#EqrV2Back { padding: 6px 8px; }
.eqrv2-dots { display: flex; align-items: center; gap: 8px; }
.eqrv2-dot { width: 8px; height: 8px; border-radius: 99px; background: #D5D7DA; transition: all .2s ease; }
.eqrv2-dot.is-active { width: 24px; background: #278AE5; }

/* ---- Type ---- */
.eqrv2-title { font-size: 24px; font-weight: 600; margin: 0; line-height: 1.33; }
.eqrv2-subtitle { font-size: 16px; font-weight: 400; color: #535862; margin: 0; }

/* ---- Fields ---- */
.eqrv2-field { display: flex; flex-direction: column; gap: 6px; }
.eqrv2-label-row { display: flex; align-items: center; justify-content: space-between; }
.eqrv2-label { font-size: 14px; font-weight: 500; color: #414651; }
.eqrv2-chip-est {
	font-size: 12px;
	font-weight: 500;
	color: #2076C5;
	background: #EFF8FF;
	border-radius: 99px;
	padding: 2px 10px;
}
.eqrv2-inputwrap {
	position: relative;
	display: flex;
	align-items: center;
	height: 44px;
	background: #FFFFFF;
	border: 1px solid #D5D7DA;
	border-radius: 8px;
	box-shadow: 0 1px 2px rgba(10, 13, 18, 0.05);
	padding: 0 14px;
	gap: 8px;
}
.eqrv2-inputwrap:focus-within { border-color: #278AE5; }
.eqrv2-inputwrap.is-invalid { border-color: #D92D20; }
.eqrv2-prefix { color: #717680; font-size: 16px; flex: 0 0 auto; display: inline-flex; align-items: center; }
.eqrv2-prefix svg { width: 20px; height: 20px; }
.eqrv2-input {
	flex: 1 1 auto;
	min-width: 0;
	border: 0;
	outline: none;
	background: transparent;
	font-family: inherit;
	font-size: 16px;
	color: #181D27;
	height: 100%;
	padding: 0;
}
.eqrv2-input::placeholder { color: #717680; }
/* Chrome paints autofilled fields pale blue; keep them white like the rest. */
.eqrv2-input:-webkit-autofill, .eqrv2-input:-webkit-autofill:hover, .eqrv2-input:-webkit-autofill:focus {
	-webkit-box-shadow: 0 0 0 1000px #FFFFFF inset; box-shadow: 0 0 0 1000px #FFFFFF inset;
	-webkit-text-fill-color: #181D27; caret-color: #181D27;
}

/* header.php's index.css sets path { stroke-width: 4 } for the whole page; give every
   icon back the width it declares. */
.eqrv2-body svg path { stroke-width: 2; }
.eqrv2-body svg[stroke-width="2.5"] path, .eqrv2-body path[stroke-width="2.5"] { stroke-width: 2.5; }
.eqrv2-body svg[stroke-width="3"] path, .eqrv2-body path[stroke-width="3"] { stroke-width: 3; }
.eqrv2-body path[stroke-width="1.67"] { stroke-width: 1.67; }
.eqrv2-body path[stroke-width="1.33333"] { stroke-width: 1.33333; }

/* HomeLink's own spinner overlay; the loading screen's beacon and checklist are the loader here. */
.eqrv2-body #hl_loading { display: none !important; }

/* Address box: the input is the whole box so gle_places.js, which sizes and
   positions #GLEPlacesSugg from the input element, lines the list up with it. */
.eqrv2-inputwrap.eqrv2-addresswrap { display: block; height: auto; padding: 0; border: 0; box-shadow: none; background: transparent; }
.eqrv2-inputwrap.eqrv2-addresswrap:focus-within { box-shadow: none; }
.eqrv2-addresswrap .eqrv2-prefix { position: absolute; left: 14px; top: 50%; transform: translateY(-50%); pointer-events: none; z-index: 1; }
.eqrv2-addresswrap .eqrv2-input {
	display: block; width: 100%; height: 44px; padding: 0 14px 0 40px;
	border: 1px solid #D5D7DA; border-radius: 8px; background: #FFFFFF; box-shadow: 0 1px 2px rgba(10, 13, 18, 0.05);
}
.eqrv2-addresswrap .eqrv2-input:focus { border-color: #278AE5; box-shadow: 0 1px 2px rgba(10, 13, 18, 0.05); }
.eqrv2-addresswrap.is-invalid .eqrv2-input { border-color: #D92D20; }

/* Places suggestions, dressed by eqr_v2.js: pin, street on one line, city under it. */
.eqrv2-body #GLEPlacesSugg {
	box-sizing: border-box; border: 1px solid #E9EAEB !important; border-radius: 12px !important; margin-top: 6px;
	box-shadow: 0 8px 8px rgba(15, 23, 41, 0.08); overflow: hidden; background: #fff !important;
	font-family: "DM Sans", "Montserrat-Regular", sans-serif;
}
.eqrv2-body #GLEPlacesSugg ul { margin: 0; padding: 0; list-style: none; }
.eqrv2-body #GLEPlacesSugg li {
	display: flex !important; align-items: center; gap: 10px; padding: 12px 14px !important;
	border-bottom: 0 !important; font-family: inherit !important; font-size: 14px !important; cursor: pointer;
}
.eqrv2-body #GLEPlacesSugg li:first-child { background: #F5FAFF; }
.eqrv2-body #GLEPlacesSugg li:hover { background: #F5F5F5; }
.eqrv2-body #GLEPlacesSugg li img { display: none; }
.eqrv2-sugpin { width: 16px; height: 16px; flex: 0 0 16px; color: #717680; fill: none; }
.eqrv2-sugpin path { stroke-width: 2; fill: none; }
.eqrv2-body #GLEPlacesSugg li:first-child .eqrv2-sugpin { color: #278AE5; }
.eqrv2-sugtext { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.eqrv2-sugmain { font-weight: 600; color: #181D27; font-size: 14px; line-height: 18px; }
.eqrv2-sugsub { font-size: 13px; color: #717680; line-height: 18px; }
/* Date: a masked MM/DD/YYYY text field; the native picker sits invisibly over the calendar glyph. */
.eqrv2-dateicon { position: relative; cursor: pointer; }
.eqrv2-datepicker { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; padding: 0; border: 0; opacity: 0; cursor: pointer; }
.eqrv2-datepicker::-webkit-calendar-picker-indicator { position: absolute; inset: 0; width: auto; height: auto; margin: 0; padding: 0; opacity: 0; cursor: pointer; }
.eqrv2-helper { font-size: 13px; color: #535862; }
.eqrv2-error { font-size: 13px; color: #D92D20; }

/* ---- Buttons ---- */
.eqrv2-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 40px;
	border: 0;
	border-radius: 8px;
	background: #278AE5;
	color: #FFFFFF;
	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: .02em;
	cursor: pointer;
}
.eqrv2-btn:hover { filter: brightness(0.92); }
.eqrv2-btn:disabled { background: #D5D7DA; cursor: not-allowed; filter: none; }
.eqrv2-btn--secondary {
	background: #FFFFFF;
	color: #414651;
	border: 1px solid #D5D7DA;
	box-shadow: 0 1px 2px rgba(10, 13, 18, 0.05);
}
.eqrv2-btn--secondary:hover { filter: none; background: #F5F5F5; }
.eqrv2-linkbtn {
	border: 0;
	background: transparent;
	color: #717680;
	font-size: 13.5px;
	font-weight: 500;
	text-decoration: underline;
	cursor: pointer;
	align-self: center;
	padding: 6px;
}

/* ---- Screen 1: address + loading checklist ---- */
.eqrv2-lookup-error { font-size: 14px; color: #D92D20; }
.eqrv2-loading { display: flex; flex-direction: column; align-items: center; gap: 18px; padding: 32px 0; }
/* Beacon as on Net Sheet V2, in this page's blue. The rings are the waves:
   each starts at the core, travels out to its place and settles, inner first,
   then middle, then outer; the three hold, fade together, and the cycle
   repeats. Start scale = the 48px core over that ring's diameter. */
.eqrv2-beacon { position: relative; width: 168px; height: 168px; flex: 0 0 auto; }
.eqrv2-beacon span { position: absolute; border-radius: 50%; background: #278AE5; opacity: 0; animation: 3.2s ease-out infinite; }
.eqrv2-beacon span:nth-child(1) { inset: 0; animation-name: eqrv2-ring-outer; }
.eqrv2-beacon span:nth-child(2) { inset: 20px; animation-name: eqrv2-ring-middle; }
.eqrv2-beacon span:nth-child(3) { inset: 38px; animation-name: eqrv2-ring-inner; }
@keyframes eqrv2-ring-inner {
	0%        { transform: scale(.522); opacity: 0; }
	20%, 80%  { transform: scale(1); opacity: .4; }
	92%, 100% { transform: scale(1); opacity: 0; }
}
@keyframes eqrv2-ring-middle {
	0%, 14%   { transform: scale(.375); opacity: 0; }
	36%, 80%  { transform: scale(1); opacity: .24; }
	92%, 100% { transform: scale(1); opacity: 0; }
}
@keyframes eqrv2-ring-outer {
	0%, 28%   { transform: scale(.286); opacity: 0; }
	52%, 80%  { transform: scale(1); opacity: .14; }
	92%, 100% { transform: scale(1); opacity: 0; }
}
.eqrv2-beacon .eqrv2-beacon-core { inset: 60px; opacity: 1; color: #fff; background: #278AE5; z-index: 1; display: flex; align-items: center; justify-content: center; animation: eqrv2-bob 3.2s ease-in-out infinite; }
.eqrv2-beacon-core svg { width: 24px; height: 24px; }
@keyframes eqrv2-bob { 0%, 100% { transform: scale(1); } 4% { transform: scale(1.06); } 14% { transform: scale(1); } }
@media (prefers-reduced-motion: reduce) {
	.eqrv2-beacon span, .eqrv2-beacon .eqrv2-beacon-core { animation: none; }
	.eqrv2-beacon span:nth-child(1) { opacity: .14; }
	.eqrv2-beacon span:nth-child(2) { opacity: .24; }
	.eqrv2-beacon span:nth-child(3) { opacity: .4; }
}
.eqrv2-checklist { list-style: none; margin: 0; padding: 6px 16px; border: 1px solid #E9EAEB; border-radius: 16px; background: #FFFFFF; width: 100%; }
.eqrv2-checklist li { display: flex; align-items: center; gap: 12px; padding: 12px 0; font-size: 15px; color: #717680; border-bottom: 1px solid #E9EAEB; }
.eqrv2-checklist li:last-child { border-bottom: 0; }
.eqrv2-checklist li.is-busy, .eqrv2-checklist li.is-done { color: #181D27; font-weight: 500; }
.eqrv2-checklist li .eqrv2-checkstate { margin-left: auto; font-size: 13px; font-weight: 500; color: #717680; }
.eqrv2-checklist li.is-busy .eqrv2-checkdot { border-color: #278AE5; border-top-color: rgba(39, 138, 229, 0.25); animation: eqrv2-spin 1s linear infinite; }
.eqrv2-checklist li.is-busy .eqrv2-checkstate { color: #278AE5; }
.eqrv2-checklist li.is-done .eqrv2-checkstate { color: #17B26A; }
@keyframes eqrv2-spin { to { transform: rotate(360deg); } }
.eqrv2-checklist li .eqrv2-checkdot {
	width: 24px; height: 24px; border-radius: 50%; border: 2px solid #D5D7DA; box-sizing: border-box;
	display: inline-flex; align-items: center; justify-content: center; flex: 0 0 24px;
}
.eqrv2-checklist li.is-done .eqrv2-checkdot { border-color: #17B26A; background: #17B26A; }
.eqrv2-checklist li.is-done .eqrv2-checkdot svg { display: block; width: 14px; height: 14px; }
.eqrv2-checklist li .eqrv2-checkdot svg { display: none; }

/* ---- Screen 2: address row ---- */
.eqrv2-addressrow { display: flex; align-items: center; gap: 10px; padding: 4px 0; }
.eqrv2-addressrow svg { width: 24px; height: 24px; flex: 0 0 auto; color: #181D27; }
.eqrv2-addressrow .eqrv2-addresstext { flex: 1 1 auto; font-size: 14px; font-weight: 500; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.eqrv2-editlink { border: 0; background: none; color: #2076C5; font-size: 14px; font-weight: 500; cursor: pointer; padding: 4px; }

/* ---- Screen 3: results card ---- */
.eqrv2-resultscard {
	background: #FFFFFF;
	border: 1px solid #F1F5F9;
	border-radius: 20px;
	box-shadow: 0 1px 3px rgba(10, 13, 18, 0.07);
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 0;
}
.eqrv2-hero {
	border-radius: 16px;
	padding: 20px;
	background:
		radial-gradient(55% 45% at 12% 88%, rgba(19, 73, 122, 0.9) 0%, rgba(19, 73, 122, 0) 90%),
		radial-gradient(50% 40% at 88% 12%, rgba(230, 126, 156, 0.85) 0%, rgba(230, 126, 156, 0) 85%),
		radial-gradient(45% 40% at 85% 80%, rgba(247, 167, 108, 0.85) 0%, rgba(247, 167, 108, 0) 85%),
		radial-gradient(60% 55% at 15% 15%, rgba(46, 49, 146, 0.9) 0%, rgba(46, 49, 146, 0) 90%),
		linear-gradient(135deg, #141A37 0%, #335486 100%);
}
.eqrv2-glass {
	background: rgba(255, 255, 255, 0.13);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
	border-radius: 16px;
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 14px;
}
.eqrv2-eyebrow { font-size: 14px; font-weight: 400; color: #F5F5F5; letter-spacing: .06em; }
.eqrv2-equity {
	font-size: 60px;
	line-height: 1.1;
	font-weight: 700;
	color: #FFFFFF;
	white-space: nowrap;
	margin: 0;
}
.eqrv2-equity.is-long { font-size: 46px; }
.eqrv2-equity.is-xlong { font-size: 36px; }
.eqrv2-growthpill {
	align-self: flex-start;
	font-size: 12px;
	font-weight: 500;
	color: #FFFFFF;
	background: rgba(255, 255, 255, 0.15);
	border-radius: 99px;
	padding: 8px 12px;
}
.eqrv2-growthpill.is-neutral { color: #E9EAEB; }
.eqrv2-ownbox { background: rgba(0, 0, 0, 0.12); border-radius: 12px; padding: 12px; display: flex; flex-direction: column; gap: 6px; }
.eqrv2-ownrow { display: flex; justify-content: space-between; font-size: 12px; color: #FFFFFF; }
.eqrv2-owntrack { height: 8px; border-radius: 99px; background: rgba(255, 255, 255, 0.2); overflow: hidden; }
.eqrv2-ownfill { height: 100%; border-radius: 99px; background: #FFFFFF; width: var(--eqrv2-own, 0%); transition: width 1.1s cubic-bezier(.22, .61, .36, 1); }
@media (prefers-reduced-motion: reduce) { .eqrv2-ownfill { transition: none; } }
.eqrv2-herorows { display: flex; flex-direction: column; }
.eqrv2-herorow { display: flex; align-items: center; justify-content: space-between; padding: 10px 0; }
.eqrv2-herorow + .eqrv2-herorow { border-top: 1px solid #7D89B0; }
.eqrv2-herorow .eqrv2-herorow-label { display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 500; color: #FFFFFF; }
.eqrv2-herorow .eqrv2-herorow-label svg { width: 24px; height: 24px; }
.eqrv2-herorow .eqrv2-herorow-value { font-size: 24px; font-weight: 600; color: #FFFFFF; }

/* ---- Stat list ---- */
.eqrv2-statlist { display: flex; flex-direction: column; padding: 4px 0; }
.eqrv2-statrow { display: flex; align-items: center; gap: 10px; padding: 13px 0; }
.eqrv2-statrow + .eqrv2-statrow { border-top: 1px solid #F1F5F9; }
.eqrv2-staticon {
	width: 32px; height: 32px; border-radius: 50%;
	background: rgba(0, 0, 0, 0.08);
	display: inline-flex; align-items: center; justify-content: center;
	flex: 0 0 auto;
	color: #13497A;
}
.eqrv2-staticon svg { width: 16px; height: 16px; }
.eqrv2-statcopy { flex: 1 1 auto; min-width: 0; }
.eqrv2-stattitle { font-size: 14px; font-weight: 500; color: #181D27; }
.eqrv2-statsub { font-size: 14px; font-weight: 400; color: #535862; }
.eqrv2-statvalue { font-size: 17px; font-weight: 600; color: #0F172B; white-space: nowrap; }

/* ---- Total equity bar + inline CTA ---- */
.eqrv2-totalbar {
	background: #181D27;
	border-radius: 14px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 16px;
	color: #FFFFFF;
}
.eqrv2-totalbar .eqrv2-totallabel { font-size: 13.5px; }
.eqrv2-totalbar .eqrv2-totalvalue { font-size: 18px; font-weight: 600; }
.eqrv2-inlinecta {
	border: 0;
	background: transparent;
	color: #2076C5;
	font-size: 14px;
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	cursor: pointer;
	padding: 12px 0 2px;
	width: 100%;
}
.eqrv2-inlinecta svg { width: 16px; height: 16px; }

/* ---- Explainer ---- */
.eqrv2-explainer { background: #F5F5F5; border-radius: 16px; padding: 16px; }
.eqrv2-explainer-head { display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 600; }
.eqrv2-explainer-head svg { width: 16px; height: 16px; color: #414651; }
.eqrv2-explainer-body { font-size: 13.5px; color: #535862; margin: 6px 0 0; }

/* ---- Agent CTA card ---- */
.eqrv2-agentcard { background: #181D27; border-radius: 16px; padding: 16px; color: #FFFFFF; }
.eqrv2-agentid { display: flex; align-items: center; gap: 10px; }
.eqrv2-avatar {
	width: 38px; height: 38px; border-radius: 50%;
	object-fit: cover;
	background: #335486;
	color: #FFFFFF;
	display: inline-flex; align-items: center; justify-content: center;
	font-size: 14px; font-weight: 600;
	flex: 0 0 auto;
	overflow: hidden;
}
.eqrv2-agentname { font-size: 14px; font-weight: 600; }
.eqrv2-agentcompany { font-size: 12px; color: #A4A7AE; }
.eqrv2-agenthead { font-size: 15px; font-weight: 600; margin: 12px 0 0; }
.eqrv2-agentbody { font-size: 13.5px; color: #D5D7DA; margin: 6px 0 12px; }
.eqrv2-sentrow {
	display: flex;
	align-items: center;
	gap: 10px;
	background: rgba(255, 255, 255, 0.08);
	border-radius: 10px;
	padding: 12px;
	margin-top: 12px;
	font-size: 14px;
}
.eqrv2-sentrow svg { width: 20px; height: 20px; color: #17B26A; flex: 0 0 auto; }

/* ---- Disclaimer + sponsor footer ---- */
.eqrv2-disclaimer { font-size: 11px; color: #717680; text-align: center; margin: 0; }
.eqrv2-sponsor { font-size: 11px; color: #717680; text-align: center; margin: 8px 0 0; }

/* ---- Request sheet / modal ---- */
.eqrv2-scrim {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, 0.5);
	z-index: 1000;
	opacity: 0;
	pointer-events: none;
	transition: opacity .2s ease;
}
.eqrv2-scrim.is-open { opacity: 1; pointer-events: auto; }
.eqrv2-sheet {
	position: fixed;
	left: 0; right: 0; bottom: 0;
	background: #FFFFFF;
	border-radius: 16px 16px 0 0;
	z-index: 1001;
	padding: 10px 20px 20px;
	transform: translateY(105%);
	transition: transform .25s ease, visibility .25s;
	max-height: 92vh;
	overflow-y: auto;
	/* Closed means gone: on desktop the modal sits centered at opacity 0,
	   and without these it still swallows every click on the page. */
	visibility: hidden;
	pointer-events: none;
}
.eqrv2-sheet.is-open { transform: translateY(0); visibility: visible; pointer-events: auto; }
.eqrv2-grab { width: 40px; height: 4px; border-radius: 99px; background: #D5D7DA; margin: 0 auto 16px; }
.eqrv2-sheet-head { display: flex; align-items: flex-start; gap: 12px; }
.eqrv2-sheet-head .eqrv2-avatar { width: 44px; height: 44px; }
.eqrv2-sheet-titles { flex: 1 1 auto; min-width: 0; }
.eqrv2-sheet-title { font-size: 20px; font-weight: 600; line-height: 1.3; }
.eqrv2-sheet-sub { font-size: 14px; color: #535862; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.eqrv2-close { border: 0; background: transparent; padding: 4px; cursor: pointer; color: #717680; flex: 0 0 auto; }
.eqrv2-close svg { width: 20px; height: 20px; }
.eqrv2-sheet-section { margin-top: 16px; }
.eqrv2-chipq { font-size: 14px; font-weight: 600; }
.eqrv2-chipq .eqrv2-optional { font-weight: 400; color: #717680; }
.eqrv2-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.eqrv2-chip {
	border: 1px solid #D5D7DA;
	background: #FFFFFF;
	border-radius: 99px;
	padding: 7px 13px;
	font-size: 14px;
	color: #414651;
	cursor: pointer;
}
.eqrv2-chip.is-selected { border-color: #278AE5; color: #2076C5; background: #EFF8FF; }
.eqrv2-consent { font-size: 12px; color: #717680; margin: 16px 0; }
.eqrv2-sheet .eqrv2-field { margin-top: 16px; }
.eqrv2-submit-error { font-size: 13px; color: #D92D20; margin: 10px 0 0; text-align: center; }

/* Sent state inside the sheet */
.eqrv2-sheet-sent { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 12px 0 4px; }
.eqrv2-checkbadge {
	width: 56px; height: 56px; border-radius: 50%;
	background: #DCFAE6;
	display: flex; align-items: center; justify-content: center;
	color: #17B26A;
}
.eqrv2-checkbadge svg { width: 28px; height: 28px; }
.eqrv2-sent-title { font-size: 20px; font-weight: 600; margin: 16px 0 6px; }
.eqrv2-sent-body { font-size: 14px; color: #535862; margin: 0 0 20px; }

/* ---- Desktop: the sheet is a centered card. Decided by the platform class the
   server puts on <body> (user agent), not by width, so a narrow embed on a
   desktop page still gets the card and a phone always gets the sheet. ---- */
.eqrv2-desktop .eqrv2-sheet {
	left: 50%; right: auto; bottom: auto; top: 50%;
	transform: translate(-50%, -50%) scale(.97);
	opacity: 0;
	width: calc(100% - 48px);
	max-width: 440px;
	border-radius: 16px;
	padding: 20px;
	max-height: 86vh;
}
.eqrv2-desktop .eqrv2-sheet.is-open { transform: translate(-50%, -50%) scale(1); opacity: 1; visibility: visible; pointer-events: auto; }
.eqrv2-desktop .eqrv2-grab { display: none; }

/* Small phones */
@media (max-width: 374px) {
	.eqrv2 { padding: 20px 12px; }
	.eqrv2-equity { font-size: 48px; }
	.eqrv2-herorow .eqrv2-herorow-value { font-size: 20px; }
}
/* Count-up numbers: the finished value sits invisibly under the live one so the box is final-size from frame one. */
.cu-wrap { display: inline-grid; font-variant-numeric: tabular-nums; text-align: inherit; }
.cu-wrap > .cu-live, .cu-wrap > .cu-ghost { grid-area: 1 / 1; }
.cu-wrap > .cu-ghost { visibility: hidden; }
.eqrv2-statvalue, .eqrv2-herorow .eqrv2-herorow-value, .eqrv2-totalbar .eqrv2-totalvalue, #EqrV2OwnValue { text-align: right; }
