/* Competition only. Data, PHOTO geometry and the shared header remain authoritative.
   Stable fact positions share row heights across desktop candidates (subgrid).
   Unlike the static reference, meaningful answers wrap and never line-clamp. */
body.competition-body .competition-page { display:flex; flex-direction:column; background:#f8f6f2; }
body.competition-body .competition-page::before,
body.competition-body .competition-page::after { display:none; }
body.competition-body .competition-stage {
 width:100%; flex:1; background:radial-gradient(circle at 15% 0%,#ffffff88,transparent 35%),linear-gradient(145deg,#f2eff9,#eae6f3 55%,#e2ddec);
}
body.competition-body #cards.photo-mode { width:min(1140px,92vw); margin-inline:auto; }
body.competition-body .competition-stage:has(> #cards.profile-mode) { width:100%; padding:24px 18px 36px; }
body.competition-body .competition-stage:has(> #cards.profile-mode) h1 { font-size:clamp(24px,2.6vw,36px); }
body.competition-body #cards.profile-mode {
 width:min(1500px,100%); margin-inline:auto; display:grid;
 grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr); grid-template-rows:repeat(6,auto); gap:0 14px; align-items:stretch;
}
body.competition-body #cards.profile-mode > .choice-card {
 grid-row:1 / span 6; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:subgrid;
 height:auto; min-height:0; max-height:none; overflow:visible; padding:20px;
 border:1px solid #ffffff; border-radius:24px; background:linear-gradient(145deg,#fff,#f9f9fc);
 box-shadow:0 12px 30px #3f345b18; color:#171b30; text-align:left; container-type:normal;
 transform:none; transition:transform 140ms ease,box-shadow 140ms ease;
}
body.competition-body #cards.profile-mode > #cardA { grid-column:1; }
body.competition-body #cards.profile-mode > #cardB { grid-column:3; }
body.competition-body #cards.profile-mode > .choice-card::after { display:none; }
body.competition-body #cards.profile-mode > .versus { grid-column:2; grid-row:1 / span 6; align-self:center; justify-self:center; }
body.competition-body #cards.profile-mode .sp-card {
 grid-column:1 / -1; grid-row:1 / -1; display:grid; grid-template-columns:subgrid; grid-template-rows:subgrid;
 min-width:0; height:auto; padding:0; border:0; border-radius:0; background:none; box-shadow:none; color:#171b30;
}
body.competition-body #cards.profile-mode .sp-identity { grid-column:1 / -1; grid-row:1; margin:0; padding:0 2px 16px; }
body.competition-body #cards.profile-mode .sp-name-line { gap:9px; }
body.competition-body #cards.profile-mode .sp-name { font-size:clamp(28px,2.6vw,39px); line-height:1.08; }
body.competition-body #cards.profile-mode .sp-age { font-size:24px; color:#626477; }
body.competition-body #cards.profile-mode .sp-meta { font-size:16px; line-height:1.4; color:#626477; margin-top:7px; }
body.competition-body #cards.profile-mode .sp-top-facts,
body.competition-body #cards.profile-mode .sp-section,
body.competition-body #cards.profile-mode .sp-want-grid { display:contents; }
/* Keep semantic group headings for assistive technology without extra visual chrome. */
body.competition-body #cards.profile-mode .sp-section-head { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
body.competition-body #cards.profile-mode .sp-badge,
body.competition-body #cards.profile-mode .sp-row-icon { display:none; }
body.competition-body #cards.profile-mode [data-profile-fact] {
 display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start; min-width:0; margin:0;
 padding:15px 14px; gap:7px; border:0; border-top:1px solid #e5e2eb; border-radius:0;
 background:#f7f6fa; box-shadow:none; overflow:visible;
}
body.competition-body #cards.profile-mode [data-profile-fact="Religion"] { grid-area:2 / 1; }
body.competition-body #cards.profile-mode [data-profile-fact="Education"] { grid-area:2 / 2; }
body.competition-body #cards.profile-mode [data-profile-fact="Family"] { grid-area:3 / 1; }
body.competition-body #cards.profile-mode [data-profile-fact="My Style"] { grid-area:3 / 2; }
body.competition-body #cards.profile-mode [data-profile-fact="Free Time"] { grid-area:4 / 1; }
body.competition-body #cards.profile-mode [data-profile-fact="With Someone"] { grid-area:4 / 2; }
body.competition-body #cards.profile-mode [data-profile-fact="Lifestyle"] { grid-area:5 / 1; }
body.competition-body #cards.profile-mode [data-profile-fact="Relationship Goal"] { grid-area:5 / 2; }
body.competition-body #cards.profile-mode [data-profile-fact="Pets"] { grid-area:6 / 1; }
body.competition-body #cards.profile-mode [data-profile-fact="Love Languages"] { grid-area:6 / 2; }
body.competition-body #cards.profile-mode [data-profile-fact="Religion"],
body.competition-body #cards.profile-mode [data-profile-fact="Education"],
body.competition-body #cards.profile-mode [data-profile-fact="Family"],
body.competition-body #cards.profile-mode [data-profile-fact="Relationship Goal"] { background:#fdfcfe; }
body.competition-body #cards.profile-mode .sp-feature-label,
body.competition-body #cards.profile-mode .sp-row-label { font-size:11px; line-height:1.4; letter-spacing:.085em; color:#656174; font-weight:750; overflow-wrap:normal; }
body.competition-body #cards.profile-mode .sp-feature-primary { font-size:19px; line-height:1.3; margin-top:7px; font-weight:750; }
body.competition-body #cards.profile-mode .sp-feature-secondary { font-size:14px; line-height:1.45; color:#626477; margin-top:4px; }
body.competition-body #cards.profile-mode .sp-pills { display:flex; flex-wrap:wrap; gap:4px 0; }
body.competition-body #cards.profile-mode .sp-pill { display:inline; min-height:0; padding:0; border-radius:0; background:none; color:#444357; font-size:15px; line-height:1.5; font-weight:450; white-space:normal; overflow-wrap:anywhere; }
body.competition-body #cards.profile-mode .sp-pills > .sp-pill:not(:last-child)::after { content:' · '; white-space:pre-wrap; color:#8c8599; }
body.competition-body #cards.profile-mode [data-profile-fact="Family"] .sp-pill,
body.competition-body #cards.profile-mode [data-profile-fact="Relationship Goal"] .sp-pill { font-weight:650; color:#25283c; }
body.competition-body #cards.profile-mode .sp-want-top { margin:0; gap:0; }
body.competition-body #cards.profile-mode .sp-goal-stack { gap:4px; }
body.competition-body #cards.profile-mode .sp-love-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
body.competition-body #cards.profile-mode .sp-love-side + .sp-love-side { border:0; padding:0; }
body.competition-body #cards.profile-mode .sp-mini-label { font-size:12px; color:#656174; line-height:1.4; margin-bottom:3px; }
body.competition-body #cards.profile-mode > .choice-card:focus-visible { outline:3px solid #6951ab; outline-offset:4px; box-shadow:0 12px 30px #3f345b18; }
@media(hover:hover) and (pointer:fine) {
 body.competition-body #cards.profile-mode > .choice-card:hover { transform:translateY(-2px); box-shadow:0 17px 36px #3f345b25; }
}
body.competition-body #cards.profile-mode > .choice-card:active { transform:translateY(1px) scale(.998); }
@media(max-width:1050px) {
 body.competition-body #cards.profile-mode > .choice-card { padding:14px; border-radius:20px; }
 body.competition-body #cards.profile-mode [data-profile-fact] { padding:12px 10px; }
 body.competition-body #cards.profile-mode .sp-pill { font-size:14px; }
 body.competition-body #cards.profile-mode .sp-feature-primary { font-size:17px; }
}
@media(max-width:700px) {
 body.competition-body:has(#cards.profile-mode) { height:auto; overflow-y:auto; }
 body.competition-body .competition-page:has(#cards.profile-mode) { height:auto; min-height:100dvh; }
 body.competition-body .competition-stage:has(> #cards.profile-mode) { flex:0 0 auto; padding:16px 12px 24px; }
 body.competition-body #cards.profile-mode { flex:none; grid-template-columns:minmax(0,1fr); grid-template-rows:auto auto auto; gap:14px; }
 body.competition-body #cards.profile-mode > #cardA { grid-column:1; grid-row:1; grid-template-rows:auto; }
 body.competition-body #cards.profile-mode > #cardB { grid-column:1; grid-row:3; grid-template-rows:auto; }
 body.competition-body #cards.profile-mode > .versus { grid-column:1; grid-row:2; position:static; transform:none; }
 body.competition-body #cards.profile-mode .sp-card { grid-template-rows:auto; }
}
@media(max-width:600px) {
 body.competition-body #cards.photo-mode { width:100%; margin:0; }
}
@media(prefers-reduced-motion:reduce) {
 body.competition-body #cards.profile-mode > .choice-card { transition:none; }
}
/* Anchor visually hidden group headings within their own candidate, including sparse cards. */
body.competition-body #cards.profile-mode .sp-card { position:relative; }
body.competition-body #cards.profile-mode .sp-section-head { top:0; left:0; margin:0; }

/* Approved responsive reference correction: eight quiet information cells,
   inline identity, vertically centered primary/detail hierarchy. */
body.competition-body .competition-stage:has(> #cards.profile-mode) { padding-top:16px; }
body.competition-body .competition-stage:has(> #cards.profile-mode) .instruction { display:none; }
body.competition-body #cards.profile-mode { grid-template-rows:auto repeat(4,minmax(155px,1fr)); min-height:calc(100svh - 220px); gap:0 10px; }
body.competition-body #cards.profile-mode > .choice-card { grid-row:1 / span 5; padding:clamp(14px,1.4vw,20px); border-radius:28px; background:#fbfcff; box-shadow:11px 12px 26px #686d7424,-10px -10px 24px #ffffff70,inset 0 1px 0 #ffffffd1; }
body.competition-body #cards.profile-mode > .versus { grid-row:1 / span 5; }
body.competition-body #cards.profile-mode .sp-identity { display:flex; flex-wrap:wrap; align-items:baseline; align-content:center; gap:6px 10px; padding:0 0 12px; margin-bottom:10px; border-bottom:1px solid #e6e6ee; }
body.competition-body #cards.profile-mode .sp-name-line { flex:0 0 auto; gap:6px; }
body.competition-body #cards.profile-mode .sp-name,
body.competition-body #cards.profile-mode .sp-age { font-size:clamp(24px,2.7vw,40px); font-weight:860; color:#14182d; line-height:1; letter-spacing:-.05em; }
body.competition-body #cards.profile-mode .sp-meta { flex:1 1 180px; min-width:0; margin:0; font-size:clamp(13px,1.3vw,19px); line-height:1.3; }
body.competition-body #cards.profile-mode [data-profile-fact],
body.competition-body #cards.profile-mode .sp-want-grid { justify-content:center; padding:clamp(12px,1vw,16px); gap:3px; border:0; border-top:1px solid #e6e6ee; background:#fafafd; }
body.competition-body #cards.profile-mode [data-profile-fact="Religion"] { border-left:1px solid #e6e6ee; border-radius:18px 0 0 0; }
body.competition-body #cards.profile-mode [data-profile-fact="Education"] { border-radius:0 18px 0 0; }
body.competition-body #cards.profile-mode [data-profile-fact="Education"],
body.competition-body #cards.profile-mode [data-profile-fact="My Style"],
body.competition-body #cards.profile-mode [data-profile-fact="With Someone"] { border-left:1px solid #e6e6ee; border-right:1px solid #e6e6ee; }
body.competition-body #cards.profile-mode [data-profile-fact="Family"],
body.competition-body #cards.profile-mode [data-profile-fact="Free Time"],
body.competition-body #cards.profile-mode [data-profile-fact="Lifestyle"] { border-left:1px solid #e6e6ee; }
body.competition-body #cards.profile-mode [data-profile-fact="Family"],
body.competition-body #cards.profile-mode [data-profile-fact="My Style"],
body.competition-body #cards.profile-mode [data-profile-fact="Lifestyle"],
body.competition-body #cards.profile-mode .sp-want-grid { background:#f7f6fa; }
body.competition-body #cards.profile-mode [data-profile-fact="Lifestyle"] { border-bottom:1px solid #e6e6ee; border-radius:0 0 0 18px; }
body.competition-body #cards.profile-mode .sp-feature-label,
body.competition-body #cards.profile-mode .sp-row-label { color:#686c80; font-size:10px; line-height:1.2; letter-spacing:.1em; margin-bottom:3px; }
body.competition-body #cards.profile-mode .sp-feature-primary { font-size:18px; font-weight:800; line-height:1.15; margin:0; }
body.competition-body #cards.profile-mode .sp-feature-secondary,
body.competition-body #cards.profile-mode .sp-pill { font-size:13px; font-weight:400; line-height:1.35; color:#6b6f82; margin:0; }
body.competition-body #cards.profile-mode .sp-pills { display:block; }
body.competition-body #cards.profile-mode .sp-pills > .sp-pill:first-child,
body.competition-body #cards.profile-mode .sp-goal-stack > .sp-pill:first-child { display:block; color:#20253b; font-size:18px; font-weight:800; line-height:1.2; margin-bottom:3px; }
body.competition-body #cards.profile-mode .sp-pills > .sp-pill:first-child::after { content:none; }
body.competition-body #cards.profile-mode [data-profile-fact="Family"] .sp-pill:not(:first-child),
body.competition-body #cards.profile-mode [data-profile-fact="Relationship Goal"] .sp-pill:not(:first-child) { color:#6b6f82; font-weight:400; }
body.competition-body #cards.profile-mode .sp-want-grid { display:flex; flex-direction:column; grid-area:5 / 2; min-width:0; margin:0; border-left:1px solid #e6e6ee; border-right:1px solid #e6e6ee; border-bottom:1px solid #e6e6ee; border-radius:0 0 18px 0; }
body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact] { display:block; grid-area:auto; padding:0; border:0; background:none; }
body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact="Relationship Goal"] .sp-row-label { font-size:0; }
body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact="Relationship Goal"] .sp-row-label::after { content:'WHAT I WANT'; font-size:10px; }
body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact="Pets"] .sp-row-label,
body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact="Love Languages"] .sp-row-label { display:none; }
body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact="Pets"] .sp-pill:first-child { display:inline; font-size:13px; font-weight:400; color:#6b6f82; }
body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact="Pets"] .sp-pill:first-child:not(:last-child)::after { content:' · '; }
body.competition-body #cards.profile-mode .sp-love-grid { display:flex; flex-wrap:wrap; gap:3px 10px; }
body.competition-body #cards.profile-mode .sp-love-side { min-width:0; }
body.competition-body #cards.profile-mode .sp-mini-label { display:inline; font-size:12px; font-weight:600; margin-right:4px; }
@media(max-width:700px) {
 body.competition-body #cards.profile-mode { grid-template-rows:auto auto auto; min-height:0; }
 body.competition-body #cards.profile-mode > #cardA { grid-row:1; }
 body.competition-body #cards.profile-mode > #cardB { grid-row:3; }
 body.competition-body #cards.profile-mode > .versus { grid-row:2; }
 body.competition-body #cards.profile-mode .sp-card { grid-template-rows:auto repeat(4,minmax(125px,auto)); }
 body.competition-body #cards.profile-mode .sp-name,
 body.competition-body #cards.profile-mode .sp-age { font-size:26px; }
 body.competition-body #cards.profile-mode .sp-feature-primary,
 body.competition-body #cards.profile-mode .sp-pills > .sp-pill:first-child,
 body.competition-body #cards.profile-mode .sp-goal-stack > .sp-pill:first-child { font-size:16px; }
 body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact="Pets"] .sp-pill:first-child { font-size:13px; }
}

/* Mobile comparison: both candidates share the available viewport. */
@media(max-width:700px) {
 body.competition-body:has(#cards.profile-mode) { height:100svh; }
 body.competition-body .competition-page:has(#cards.profile-mode) { height:100svh; min-height:0; }
 body.competition-body .competition-stage:has(> #cards.profile-mode) { flex:1; min-height:0; display:flex; flex-direction:column; padding:5px 7px 7px; }
 body.competition-body .competition-stage:has(> #cards.profile-mode) .mode-label { align-self:center; width:auto; min-height:16px; padding:3px 10px; font-size:6px; margin:0; }
 body.competition-body .competition-stage:has(> #cards.profile-mode) h1 { flex:none; font-size:16px; line-height:1.1; margin:4px 0 6px; }
 body.competition-body #cards.profile-mode { flex:1; min-height:0; grid-template-rows:minmax(0,1fr) 20px minmax(0,1fr); gap:3px; }
 body.competition-body #cards.profile-mode > .choice-card { min-height:0; padding:8px 9px; border-radius:17px; }
 body.competition-body #cards.profile-mode .sp-card { min-height:0; grid-template-rows:auto repeat(4,minmax(0,1fr)); }
 body.competition-body #cards.profile-mode .sp-identity { gap:3px 5px; padding-bottom:5px; margin-bottom:5px; flex-wrap:nowrap; }
 body.competition-body #cards.profile-mode .sp-name-line { gap:3px; }
 body.competition-body #cards.profile-mode .sp-name,
 body.competition-body #cards.profile-mode .sp-age { font-size:clamp(17px,5vw,22px); }
 body.competition-body #cards.profile-mode .sp-meta { flex:1 1 auto; font-size:clamp(8px,2.5vw,11px); line-height:1.1; }
 body.competition-body #cards.profile-mode [data-profile-fact],
 body.competition-body #cards.profile-mode .sp-want-grid { min-height:0; padding:4px 7px; gap:1px; }
 body.competition-body #cards.profile-mode .sp-feature-label,
 body.competition-body #cards.profile-mode .sp-row-label { font-size:6px; line-height:1.1; margin-bottom:2px; }
 body.competition-body #cards.profile-mode .sp-feature-primary,
 body.competition-body #cards.profile-mode .sp-pills > .sp-pill:first-child,
 body.competition-body #cards.profile-mode .sp-goal-stack > .sp-pill:first-child { font-size:clamp(9px,2.6vw,11px); line-height:1.1; margin-bottom:2px; }
 body.competition-body #cards.profile-mode .sp-feature-secondary,
 body.competition-body #cards.profile-mode .sp-pill,
 body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact="Pets"] .sp-pill:first-child { font-size:clamp(6.5px,1.9vw,8px); line-height:1.15; }
 body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact] { padding:0; }
 body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact="Relationship Goal"] .sp-row-label::after { font-size:6px; }
 body.competition-body #cards.profile-mode .sp-goal-stack { gap:1px; }
 body.competition-body #cards.profile-mode .sp-love-grid { gap:1px 5px; }
 body.competition-body #cards.profile-mode .sp-mini-label { font-size:6.5px; line-height:1.15; margin-right:2px; }
 body.competition-body #cards.profile-mode > .versus { width:20px; height:20px; min-height:0; font-size:5px; }
}
@media(max-width:700px) {
 body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact] { flex:0 0 auto; }
 body.competition-body #cards.profile-mode .sp-want-grid { gap:1px; }
 body.competition-body #cards.profile-mode .sp-love-grid { display:block; }
 body.competition-body #cards.profile-mode .sp-love-side { display:inline; }
 body.competition-body #cards.profile-mode .sp-love-side + .sp-love-side::before { content:' · '; }
}
@media(max-width:700px) and (max-height:700px) {
 body.competition-body #cards.profile-mode > .choice-card { padding:5px 6px; }
 body.competition-body #cards.profile-mode .sp-identity { padding-bottom:3px; margin-bottom:3px; }
 body.competition-body #cards.profile-mode .sp-name,
 body.competition-body #cards.profile-mode .sp-age { font-size:17px; }
 body.competition-body #cards.profile-mode .sp-meta { font-size:7px; }
 body.competition-body #cards.profile-mode [data-profile-fact],
 body.competition-body #cards.profile-mode .sp-want-grid { padding:2px 5px; }
 body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact] { padding:0; }
 body.competition-body #cards.profile-mode .sp-feature-label,
 body.competition-body #cards.profile-mode .sp-row-label,
 body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact="Relationship Goal"] .sp-row-label::after { font-size:5px; margin-bottom:1px; }
 body.competition-body #cards.profile-mode .sp-feature-primary,
 body.competition-body #cards.profile-mode .sp-pills > .sp-pill:first-child,
 body.competition-body #cards.profile-mode .sp-goal-stack > .sp-pill:first-child { font-size:8px; margin-bottom:1px; }
 body.competition-body #cards.profile-mode .sp-feature-secondary,
 body.competition-body #cards.profile-mode .sp-pill,
 body.competition-body #cards.profile-mode .sp-mini-label,
 body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact="Pets"] .sp-pill:first-child { font-size:5.5px; line-height:1.1; }
}
@media(max-width:700px) {
 body.competition-body #cards.profile-mode .sp-pills,
 body.competition-body #cards.profile-mode .sp-love-grid { font-size:clamp(6.5px,1.9vw,8px); line-height:1.15; }
}
@media(max-width:700px) and (max-height:700px) {
 body.competition-body #cards.profile-mode .sp-pills,
 body.competition-body #cards.profile-mode .sp-love-grid { font-size:5.5px; line-height:1.1; }
}

/* One physical comparison frame. Mode changes replace content, not geometry. */
body.competition-body .competition-stage:has(> #cards:is(.photo-mode,.profile-mode)) { width:100%; padding:38px 0 62px; }
body.competition-body .competition-stage:has(> #cards:is(.photo-mode,.profile-mode)) h1 { font-size:clamp(34px,3.8vw,50px); }
body.competition-body .competition-stage:has(> #cards:is(.photo-mode,.profile-mode)) .instruction { display:block; }
body.competition-body #cards:is(.photo-mode,.profile-mode) { width:min(1140px,92vw); margin-inline:auto; display:grid; grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr); grid-template-rows:var(--choice-height); gap:18px; min-height:0; align-items:stretch; }
body.competition-body #cards:is(.photo-mode,.profile-mode) > .choice-card { grid-row:1; height:100%; min-height:0; max-height:none; border-radius:var(--choice-radius); transform:none; }
body.competition-body #cards:is(.photo-mode,.profile-mode) > #cardA { grid-column:1; }
body.competition-body #cards:is(.photo-mode,.profile-mode) > #cardB { grid-column:3; }
body.competition-body #cards:is(.photo-mode,.profile-mode) > .versus { grid-column:2; grid-row:1; position:static; transform:none; align-self:center; justify-self:center; }
body.competition-body #cards.profile-mode > .choice-card { display:block; container-type:inline-size; }
body.competition-body #cards.profile-mode .sp-card { height:100%; grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:auto repeat(4,minmax(0,1fr)); }
body.competition-body #cards:is(.photo-mode,.profile-mode) > .choice-card:hover,
body.competition-body #cards:is(.photo-mode,.profile-mode) > .choice-card:active { transform:none; }
@media(min-width:701px) {
 body.competition-body #cards.profile-mode .sp-name,
 body.competition-body #cards.profile-mode .sp-age { font-size:clamp(20px,5.5cqw,32px); }
 body.competition-body #cards.profile-mode .sp-meta { font-size:clamp(10px,2.6cqw,14px); }
 body.competition-body #cards.profile-mode .sp-feature-primary,
 body.competition-body #cards.profile-mode .sp-pills > .sp-pill:first-child,
 body.competition-body #cards.profile-mode .sp-goal-stack > .sp-pill:first-child { font-size:clamp(12px,3.2cqw,18px); }
 body.competition-body #cards.profile-mode .sp-feature-secondary,
 body.competition-body #cards.profile-mode .sp-pill,
 body.competition-body #cards.profile-mode .sp-pills,
 body.competition-body #cards.profile-mode .sp-love-grid,
 body.competition-body #cards.profile-mode .sp-mini-label,
 body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact="Pets"] .sp-pill:first-child { font-size:clamp(8px,2.2cqw,12px); line-height:1.2; }
 body.competition-body #cards.profile-mode [data-profile-fact],
 body.competition-body #cards.profile-mode .sp-want-grid { padding:8px 10px; }
 body.competition-body #cards.profile-mode .sp-want-grid [data-profile-fact] { padding:0; flex:0 0 auto; }
 body.competition-body #cards.profile-mode .sp-love-grid { display:block; }
 body.competition-body #cards.profile-mode .sp-love-side { display:inline; }
}
@media(min-width:701px) and (max-width:1000px) {
 body.competition-body #cards:is(.photo-mode,.profile-mode) { grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr); gap:12px; }
}
@media(max-width:700px) {
 body.competition-body:has(#cards:is(.photo-mode,.profile-mode)) { height:100svh; }
 body.competition-body .competition-page:has(#cards:is(.photo-mode,.profile-mode)) { height:100svh; min-height:0; }
 body.competition-body .competition-stage:has(> #cards:is(.photo-mode,.profile-mode)) { flex:1; min-height:0; display:flex; flex-direction:column; padding:5px 7px 7px; }
 body.competition-body .competition-stage:has(> #cards:is(.photo-mode,.profile-mode)) .mode-label { align-self:center; width:auto; min-height:16px; padding:3px 10px; font-size:6px; margin:0; }
 body.competition-body .competition-stage:has(> #cards:is(.photo-mode,.profile-mode)) h1 { flex:none; font-size:16px; line-height:1.1; margin:4px 0 6px; }
 body.competition-body .competition-stage:has(> #cards:is(.photo-mode,.profile-mode)) .instruction { display:none; }
 body.competition-body #cards:is(.photo-mode,.profile-mode) { flex:1; width:100%; min-height:0; grid-template-columns:1fr; grid-template-rows:minmax(0,1fr) 20px minmax(0,1fr); gap:3px; }
 body.competition-body #cards:is(.photo-mode,.profile-mode) > #cardA { grid-column:1; grid-row:1; }
 body.competition-body #cards:is(.photo-mode,.profile-mode) > #cardB { grid-column:1; grid-row:3; }
 body.competition-body #cards:is(.photo-mode,.profile-mode) > .choice-card { border-radius:17px; }
 body.competition-body #cards:is(.photo-mode,.profile-mode) > .versus { grid-column:1; grid-row:2; width:20px; height:20px; min-height:0; font-size:5px; }
}
body.competition-body .competition-stage:has(> #cards:is(.photo-mode,.profile-mode)) .mode-label { width:114px; }
@media(max-width:700px) {
 body.competition-body .competition-stage:has(> #cards:is(.photo-mode,.profile-mode)) .mode-label { width:56px; }
}
@media(min-width:701px) {
 body.competition-body #cards.profile-mode .sp-love-side + .sp-love-side::before { content:' · '; }
}
@media(max-width:700px) {
 body.competition-body .competition-stage:has(> #cards:is(.photo-mode,.profile-mode)) { position:relative; }
 body.competition-body .competition-stage:has(> #cards:is(.photo-mode,.profile-mode)) #guestConversion { position:absolute; top:100%; left:0; width:100%; margin:0; padding:8px; }
}
