/* FishSnap private review: approved continuous desktop profile layout (owner lock 2026-10-03).
   Mirrors the typography, pale aqua surfaces and hierarchy of the approved five-profile review.html.
   Loaded after the website's own style sheets; everything is namespaced with .rv- so the site's rules stay untouched. */
body.rv-pending > *:not(.review-banner):not(.rv-page) { visibility: hidden; }
body.rv-continuous > *:not(.review-banner):not(.rv-page):not(.rv-shadow) { display: none !important; }
body.rv-continuous .rv-shadow { display: none !important; }
body.rv-continuous { overflow-x: hidden; }
.rv-map [data-reader-map-open], .rv-map .neon-story-link { display: none !important; }
body.rv-continuous { background: #f7faf9; color: #0b2027; }
body.rv-continuous.rv-site > *:not(.rv-page):not(.rv-shadow) { display: revert !important; }
body.rv-continuous.rv-site .rv-shadow { display: none !important; }
body.rv-continuous.rv-site .rv-main { padding-top: 28px; }

.rv-page { font: 400 16px/1.58 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #0b2027; text-rendering: optimizeLegibility; }
.rv-page *, .rv-page *::before, .rv-page *::after { box-sizing: border-box; }
.rv-page a { color: #176b72; }

.rv-top { background: #fff; border-bottom: 1px solid #d8e3e1; display: flex; align-items: center; gap: 25px; min-height: 72px; padding: 12px max(20px, calc((100vw - 1240px) / 2)); }
.rv-logo { display: inline-flex; align-items: center; gap: 10px; color: #0b2027; font: 750 23px/1 "Avenir Next", Avenir, Inter, sans-serif; letter-spacing: -.045em; text-decoration: none; }
.rv-logo img { width: 34px; height: 34px; object-fit: contain; }
.rv-top small { font-size: 13px; color: #687b80; }
.rv-top .rv-status { margin-left: auto; display: inline-flex; align-items: center; padding: 5px 11px; border-radius: 999px; background: #e7f1ef; color: #176b72; font: 600 11px/1.2 "JetBrains Mono", Inter, monospace; letter-spacing: .04em; white-space: nowrap; }

.rv-switcher { display: flex; align-items: center; gap: 7px; overflow: auto; padding: 13px max(20px, calc((100vw - 1240px) / 2)); background: #fff; border-bottom: 1px solid #d8e3e1; }
.rv-switcher a { white-space: nowrap; text-decoration: none; color: #28474a; font-size: 14px; font-weight: 600; padding: 8px 14px; border: 1px solid #d8e3e1; border-radius: 50px; transition: background .18s, border-color .18s; }
.rv-switcher a:hover { background: #edf4f2; border-color: #9bc8c1; }
.rv-switcher a.rv-active { background: #176b72; color: #fff; border-color: #176b72; }
.rv-switcher .rv-sw-sep { flex: 1; }
.rv-switcher .rv-sw-pos { color: #687b80; font-size: 13px; white-space: nowrap; }

.rv-main { max-width: 1240px; margin: auto; padding: 36px 20px 80px; }
.rv-kicker { color: #176b72; font-family: "JetBrains Mono", Inter, monospace; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; font-weight: 800; margin: 0; }
.rv-main h1 { font: 700 clamp(2.55rem, 5vw, 4rem)/1.08 "Avenir Next", Avenir, Inter, sans-serif; letter-spacing: -.035em; margin: 10px 0; color: #0b2027; }
.rv-latin { font: italic 17px/1.45 Inter, sans-serif; color: #657b7c; margin: 0 0 20px; }
.rv-intro { max-width: 820px; font: 400 17px/1.7 Inter, sans-serif; color: #405c5e; margin: 0 0 28px; }

.rv-hero { display: grid; grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr); gap: 42px; align-items: start; }
.rv-hero > * { min-width: 0; }
.rv-photo { background: #e5f0ed; min-height: 405px; border-radius: 22px; overflow: hidden; position: relative; }
.rv-photo > img { width: 100%; height: 100%; object-fit: contain; position: absolute; inset: 0; padding: 26px; mix-blend-mode: multiply; }
.rv-noimage { background: #f1f6f4; border: 1px dashed #b9cdc7; border-radius: 16px; padding: 18px 20px; display: grid; gap: 6px; color: #315348; font-size: 14px; line-height: 1.5; }
.rv-noimage-title { font-weight: 600; color: #0b2027; font-size: 15px; }
.rv-pick { display: flex; gap: 9px; margin: 12px 0 0; overflow: auto; max-width: 100%; padding: 2px; }
.rv-pick button { flex: none; border: 2px solid transparent; background: none; padding: 0; border-radius: 10px; cursor: pointer; }
.rv-pick button.rv-selected { border-color: #176b72; }
.rv-pick img { width: 66px; height: 62px; object-fit: contain; background: #e5f0ed; border-radius: 8px; padding: 4px; display: block; mix-blend-mode: multiply; }

.rv-essentials { background: #fff; border: 1px solid #d8e3e1; border-radius: 18px; padding: 24px 26px; }
.rv-essentials h2 { margin: 0 0 12px; font: 700 27px/1.2 "Avenir Next", Avenir, Inter, sans-serif; letter-spacing: -.03em; color: #0b2027; }
.rv-difficulty { display: inline-block; background: #e7f1ef; color: #176b72; font-size: 13px; font-weight: 800; padding: 6px 10px; border-radius: 50px; }
.rv-essentials dl { margin: 12px 0 0; }
.rv-essentials dl div { display: flex; justify-content: space-between; gap: 12px; padding: 12px 0; border-bottom: 1px solid #d8e3e1; font-size: 14px; }
.rv-essentials dt { color: #687b80; }
.rv-essentials dd { margin: 0; font-weight: 700; text-align: right; color: #153b3d; overflow-wrap: anywhere; }
.rv-essentials .rv-rationale { color: #526d69; font-size: 14px; line-height: 1.65; margin: 14px 0 0; }

.rv-columns { display: grid; grid-template-columns: minmax(0, 1fr) 308px; gap: 34px; margin-top: 42px; }
.rv-content { min-width: 0; }
.rv-chapter { background: #fff; border: 1px solid #d8e3e1; border-radius: 18px; padding: 28px 30px; margin-bottom: 17px; scroll-margin-top: 24px; }
.rv-chapter .rv-kicker { margin-bottom: 8px; }
.rv-chapter h2 { font: 700 clamp(25px, 3vw, 32px)/1.18 "Avenir Next", Avenir, Inter, sans-serif; letter-spacing: -.03em; margin: 0 0 10px; color: #0b2027; }
.rv-chapter p { color: #405e5a; line-height: 1.72; margin: 0 0 14px; }
.rv-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.rv-fact { border-top: 1px solid #d8e3e1; padding: 12px 2px; font-size: 14px; color: #244d48; line-height: 1.55; }
.rv-fact b { display: block; font-size: 11px; text-transform: uppercase; letter-spacing: .08em; color: #687b80; margin-bottom: 2px; }
.rv-callout { margin: 14px 0 4px; padding: 14px 18px; border-left: 3px solid #176b72; background: #e7f1ef; border-radius: 0 12px 12px 0; }
.rv-callout strong { display: block; color: #0b2027; margin-bottom: 4px; }
.rv-callout p { margin: 0; color: #2f4f4b; }

.rv-aside { align-self: start; position: sticky; top: 20px; }
.rv-box { background: #fff; border: 1px solid #d8e3e1; border-radius: 18px; padding: 20px; margin-bottom: 15px; }
.rv-box h2 { font: 700 21px/1.2 "Avenir Next", Avenir, Inter, sans-serif; letter-spacing: -.03em; margin: 0 0 10px; color: #0b2027; }
.rv-box p { font-size: 14px; color: #687b80; margin: 8px 0 0; }
.rv-box a.rv-link, .rv-explore a { display: block; color: #176b72; padding: 5px 0; text-decoration: none; font-size: 14px; font-weight: 600; }
.rv-box a:hover { text-decoration: underline; }
.rv-explore a.rv-current { color: #0b2027; }
.rv-map { overflow: hidden; border: 1px solid #d8e3e1; border-radius: 12px; background: #e7f1ef; min-height: 160px; }
.rv-map .care-range-map { margin: 0; padding: 0; border: 0; background: transparent; max-width: none; }
.rv-map .care-range-map-heading, .rv-map .care-range-map-legend, .rv-map figcaption { display: none; }
.rv-map .care-range-map-frame { border: 0; border-radius: 0; }
.rv-map svg, .rv-map img { display: block; width: 100%; height: auto; }
.rv-map-note { font-size: 12px !important; }
.rv-warning { border-left: 4px solid #b9955b; padding-left: 10px; }
.rv-decision { display: flex; flex-wrap: wrap; gap: 7px; }
.rv-decision button { border: 1px solid #d8e3e1; border-radius: 9px; background: #fff; color: #0b2027; padding: 9px 12px; cursor: pointer; font: inherit; font-size: 14px; }
.rv-decision button.rv-chosen { background: #0b3036; border-color: #0b3036; color: #fff; }
.rv-note { width: 100%; min-height: 92px; border: 1px solid #d8e3e1; border-radius: 9px; padding: 9px; margin-top: 10px; font: 14px/1.5 Inter, Arial, sans-serif; }
.rv-btn { display: inline-block; background: #0b3036; color: #fff; border: 0; border-radius: 9px; padding: 11px 15px; font: 700 14px Inter, sans-serif; margin-top: 8px; cursor: pointer; }
.rv-note:focus-visible, .rv-decision button:focus-visible, .rv-switcher a:focus-visible, .rv-explore a:focus-visible { outline: 3px solid #79b9b4; outline-offset: 2px; }
.rv-foot { color: #687b80; font-size: 13px; margin-top: 30px; }

@media (max-width: 850px) {
  .rv-hero, .rv-columns { grid-template-columns: 1fr; }
  .rv-hero { gap: 22px; }
  .rv-aside { position: static; }
  .rv-photo { min-height: 340px; }
}
@media (max-width: 600px) {
  .rv-main { padding: 25px 14px 60px; }
  .rv-top { min-height: 60px; padding: 12px 14px; }
  .rv-top small { font-size: 11px; }
  .rv-top .rv-status { display: none; }
  .rv-logo { font-size: 20px; }
  .rv-logo img { width: 29px; height: 29px; }
  .rv-switcher { padding: 12px 14px; }
  .rv-photo { min-height: 260px; }
  .rv-photo > img { padding: 18px; }
  .rv-essentials, .rv-chapter { padding: 21px; }
  .rv-facts { grid-template-columns: 1fr; }
  .rv-intro { font-size: 16px; }
}
/* On the website the enlarge-map control stays available (its dialog lives outside the profile); the review copy hides it. */
body.rv-site .rv-map [data-reader-map-open] { display: inline-flex !important; margin: 10px 12px 12px; font-size: .8rem; }

/* Local life-profile maps already have a focused frame; fit the whole range on phones. */
body[data-page="species"].neon-reference .neon-map-dialog .care-range-map-frame.life-range-map-frame{min-width:0;width:100%;}

/* optional qualification note under a care-essentials value (backwards compatible: absent note renders as before) */
.rv-essentials dd small { display: block; margin-top: 2px; font-size: 12px; font-weight: 400; line-height: 1.45; color: #687b80; }



/* ===== Approved FishSnap profile standard (owner lock 2026-10-12), appended after the baseline rules so it takes precedence. =====
   Frozen reference: docs/design-system/approved-profile-standard-2026-10-12 (desktop 1247 and phone 390 views).
   Words are never split: no hyphenation, no mid-word breaks. Hyphenated and dashed tokens are wrapped in .rv-nb. */
body.rv-std .rv-page { --rv-ink2: #3f5a60; --rv-ink3: #687b80; --rv-lagoon: #176b72; --rv-lagoon-ink: #0f5057; --rv-soft: #e8f3f2; --rv-river: #e4f0ef; --rv-line: rgba(17,55,64,.12); --rv-display: "Avenir Next", Avenir, "SF Pro Display", Inter, -apple-system, sans-serif; }
body.rv-std .rv-page, body.rv-std .rv-page * { word-break: normal; overflow-wrap: normal; hyphens: none; -webkit-hyphens: none; }
body.rv-std .rv-nb { white-space: nowrap; }
body.rv-std .rv-page svg { fill: currentColor; flex: none; }
body.rv-std .rv-main .rv-kick, body.rv-std .rv-main h1, body.rv-std .rv-main .rv-latin { text-align: center; }
body.rv-std .rv-main .rv-latin { margin-bottom: 14px; }
body.rv-std .rv-tags { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
body.rv-std .rv-tags span { display: inline-flex; padding: 7px 13px; border-radius: 999px; background: #eef4f3; font-size: 14px; font-weight: 600; color: var(--rv-ink2); }
body.rv-std .rv-aka { text-align: center; font-size: 14px; color: var(--rv-ink3); margin: 10px 0 0; }
body.rv-std .rv-intro { max-width: 820px; margin: 18px auto 0; text-align: center; }
body.rv-std .rv-hero { align-items: stretch; margin-top: 30px; }
body.rv-std .rv-gal { min-width: 0; display: flex; flex-direction: column; }
body.rv-std .rv-photo { flex: 1; min-height: 380px; }
body.rv-std .rv-photo > img { padding: 26px; }

body.rv-std .rv-ess { background: #fff; border: 1px solid var(--rv-line); border-radius: 18px; padding: 24px 26px; display: flex; flex-direction: column; }
body.rv-std .rv-main .rv-ess h2, body.rv-std .rv-main .rv-suit h2, body.rv-std .rv-main .rv-like h2 { margin: 0 0 16px; font: 700 27px/1.2 var(--rv-display); letter-spacing: -.03em; text-align: center; color: #0b2027; }
body.rv-std .rv-factcards { flex: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-auto-rows: 1fr; gap: 10px; }
body.rv-std .rv-factcard { background: #fff; border: 1px solid var(--rv-line); border-radius: 18px; padding: 14px 10px; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; text-align: center; gap: 6px; min-height: 128px; }
body.rv-std .rv-factcard svg { width: 22px; height: 22px; color: var(--rv-lagoon-ink); }
body.rv-std .rv-factcard .l { font-size: 13px; font-weight: 600; color: var(--rv-ink2); }
body.rv-std .rv-factcard .v { font: 700 19px/1.15 var(--rv-display); color: #0b2027; }
body.rv-std .rv-factcard .v small { font-size: 12px; font-weight: 500; color: var(--rv-ink3); margin-left: 2px; }
body.rv-std .rv-factcard .n { font-size: 12px; color: var(--rv-ink3); line-height: 1.35; }
body.rv-std .rv-ess-empty { text-align: center; color: var(--rv-ink3); font-size: 14px; }

body.rv-std .rv-suit { background: var(--rv-river); border-radius: 22px; padding: 24px 26px; margin-top: 34px; }
body.rv-std .rv-traits { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
body.rv-std .rv-trait { background: #fff; border-radius: 18px; padding: 14px 8px 12px; text-align: center; display: flex; flex-direction: column; align-items: center; gap: 6px; }
body.rv-std .rv-tic { width: 44px; height: 44px; border-radius: 14px; background: var(--rv-soft); color: var(--rv-lagoon-ink); display: flex; align-items: center; justify-content: center; }
body.rv-std .rv-tic svg { width: 24px; height: 24px; }
body.rv-std .rv-trait b { font-size: 14px; line-height: 1.2; }
body.rv-std .rv-trait > span:last-child { font-size: 12px; color: var(--rv-ink3); line-height: 1.3; }

body.rv-std .rv-chips { display: none; }
body.rv-std .rv-chapter { padding: 28px 30px; }
body.rv-std .rv-chead { display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; }
body.rv-std .rv-cic { width: 44px; height: 44px; border-radius: 14px; background: var(--rv-soft); color: var(--rv-lagoon-ink); display: flex; align-items: center; justify-content: center; }
body.rv-std .rv-cic svg { width: 24px; height: 24px; }
body.rv-std .rv-chapter h2 { text-align: center; margin: 0; }
body.rv-std .rv-key { display: block; text-align: center; font-size: 16px; font-weight: 600; color: var(--rv-lagoon-ink); margin: 6px 0 12px; }
body.rv-std .rv-chapter > p { text-align: left; }
body.rv-std .rv-reminders { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 10px 0 14px; }
body.rv-std .rv-reminders span { height: 66px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; text-align: center; font-size: 12.5px; line-height: 1.2; font-weight: 600; color: var(--rv-lagoon-ink); background: var(--rv-soft); border-radius: 14px; padding: 4px 6px; }
body.rv-std .rv-reminders svg { width: 18px; height: 18px; }
body.rv-std .rv-map { margin-top: 18px; border: 1px solid #c5dedb; border-radius: 18px; background: #e3eeee; min-height: 160px; }
body.rv-std .rv-map-cap { font-size: 13px !important; color: var(--rv-ink2) !important; margin: 10px 0 0 !important; line-height: 1.45 !important; }
body.rv-std .rv-map-leg { display: flex; align-items: center; gap: 8px; margin-top: 6px; font-size: 12px; color: var(--rv-ink3); }
body.rv-std .rv-map-leg i { width: 12px; height: 12px; border-radius: 3px; background: var(--rv-lagoon); flex: none; }

body.rv-std .rv-fit { background: #fff; border: 1px solid var(--rv-line); border-radius: 18px; padding: 22px 24px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 20px; align-items: center; }
body.rv-std .rv-fit-row { display: flex; gap: 12px; align-items: center; }
body.rv-std .rv-ri { width: 44px; height: 44px; border-radius: 14px; background: var(--rv-soft); color: var(--rv-lagoon-ink); display: flex; align-items: center; justify-content: center; flex: none; }
body.rv-std .rv-ri svg { width: 22px; height: 22px; }
body.rv-std .rv-fit b { display: block; font-weight: 650; }
body.rv-std .rv-fit-row span:not(.rv-ri) { font-size: 13px; color: var(--rv-ink3); line-height: 1.45; display: block; }
body.rv-std .rv-btn-ghost, body.rv-std .rv-btn-dark { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 20px; border-radius: 999px; font: 700 15px Inter, sans-serif; text-decoration: none; cursor: pointer; border: 0; }
body.rv-std .rv-btn-ghost { background: #fff; border: 1px solid rgba(17,55,64,.22); color: #0b2027 !important; }
body.rv-std .rv-btn-dark { background: #0b2027; color: #fff; }
body.rv-std .rv-btn-dark svg { width: 20px; height: 20px; }
/* End sections: related row spans the full site content width and shares the page centre; feedback is narrower and centred. */
body.rv-std .rv-like { margin-top: 42px; width: 100%; }
body.rv-std .rv-like-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; width: 100%; }
body.rv-std .rv-like-row a { padding: 16px; border: 1px solid var(--rv-line); border-radius: 18px; background: #fff; text-decoration: none; color: #0b2027 !important; display: flex; flex-direction: column; gap: 8px; align-items: center; text-align: center; }
body.rv-std .rv-like-row img { width: 100%; max-width: 220px; height: 140px; object-fit: contain; mix-blend-mode: multiply; }
body.rv-std .rv-like-row b { font-size: 15px; font-weight: 650; }
body.rv-std .rv-like-row i { font-size: 13px; color: var(--rv-ink2); }
@media (max-width: 1100px) { body.rv-std .rv-traits { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 850px) {
  body.rv-std .rv-fit { grid-template-columns: 1fr; }
  body.rv-std .rv-aside .rv-explore { display: none; }
  body.rv-std .rv-chips { display: flex; gap: 8px; overflow-x: auto; margin: 22px -14px 0; padding: 4px 14px 10px; scrollbar-width: none; }
  body.rv-std .rv-chips::-webkit-scrollbar { display: none; }
  body.rv-std .rv-chips a { flex: none; padding: 8px 14px; border-radius: 999px; background: #fff; border: 1px solid var(--rv-line); font-size: 14px; font-weight: 600; color: #0b2027 !important; text-decoration: none; white-space: nowrap; }
}
/* Phone-width website: same order and centring as the approved phone view (picture, name, tags, intro, suitability, essentials, chapters). */
@media (max-width: 600px) {
  body.rv-std .rv-main { display: flex; flex-direction: column; padding: 14px 20px 60px; }
  body.rv-std .rv-hero { display: contents; }
  body.rv-std .rv-gal { order: 1; }
  body.rv-std .rv-kick { order: 2; margin-top: 18px; } body.rv-std .rv-main h1 { order: 3; font-size: 30px; line-height: 1.1; } body.rv-std .rv-latin { order: 4; margin: 6px 0 14px; }
  body.rv-std .rv-tags { order: 5; } body.rv-std .rv-aka { order: 6; } body.rv-std .rv-intro { order: 7; font-size: 16px; }
  body.rv-std .rv-suit { order: 8; margin-top: 26px; padding: 16px 14px 14px; border-radius: 24px; }
  body.rv-std .rv-ess { order: 9; margin-top: 26px; padding: 0; border: 0; background: transparent; border-radius: 0; }
  body.rv-std .rv-chips { order: 10; } body.rv-std .rv-columns { order: 11; margin-top: 10px; } body.rv-std .rv-like { order: 12; } body.rv-std .rv-columns { display: block; }
  body.rv-std .rv-ess h2, body.rv-std .rv-suit h2 { font-size: 20px; margin-bottom: 12px; }
  body.rv-std .rv-traits { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  body.rv-std .rv-factcards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.rv-std .rv-photo { min-height: 0; aspect-ratio: 1; background: #fff; border-radius: 26px; max-width: 340px; width: 100%; margin: 0 auto; }
  body.rv-std .rv-gal { background: var(--rv-river); border-radius: 0 0 30px 30px; padding: 22px 20px; margin: 0 -20px; }
  body.rv-std .rv-chapter { padding: 16px; border-radius: 20px; }
  body.rv-std .rv-chapter h2 { font-size: 17px; }
  body.rv-std .rv-chapter > p { text-align: center; line-height: 1.6; }
  body.rv-std .rv-like-row { display: flex; overflow-x: auto; gap: 10px; padding-bottom: 6px; margin: 0 -20px; padding-left: 20px; scrollbar-width: none; }
  body.rv-std .rv-like-row a { flex: none; width: 150px; padding: 12px; }
  body.rv-std .rv-like-row img { width: 124px; height: 92px; }
  body.rv-std .rv-like h2 { font-size: 18px; }
  body.rv-std .rv-fit { text-align: center; margin-top: 22px; }
  body.rv-std .rv-fit-row { flex-direction: column; text-align: center; }
  body.rv-std .rv-fit-row b { font-size: 17px; font-family: var(--rv-display); }
  body.rv-std .rv-fit .rv-btn-ghost { width: 100%; }
  }

/* Help improve: the site's single correction card (profile-feedback.js) in the approved narrow, centred form. */
body.rv-std .rv-main .profile-feedback { margin: 34px auto 0; max-width: 760px; background: #fff; border: 1px solid var(--rv-line); border-radius: 18px; padding: 24px; text-align: center; color: #0b2027; }
body.rv-std .rv-main section.profile-feedback h2 { margin: 0; font: 700 21px/1.2 var(--rv-display); letter-spacing: -.02em; }
body.rv-std .rv-main .profile-feedback > p { max-width: none; color: var(--rv-ink2); margin: 8px 0 16px; line-height: 1.5; }
body.rv-std .rv-main .profile-feedback summary { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; min-width: 280px; padding: 0 28px; border-radius: 999px; background: #0b2027; color: #fff; font: 700 15px Inter, sans-serif; cursor: pointer; list-style: none; }
body.rv-std .rv-main .profile-feedback summary::-webkit-details-marker { display: none; }
body.rv-std .rv-main .profile-feedback summary svg { width: 20px; height: 20px; fill: currentColor; flex: none; }
body.rv-std .rv-main .profile-feedback form { margin: 0 auto; text-align: left; }
body.rv-std .rv-like-more { display: block; margin: 16px auto 0; text-align: center; font-weight: 650; color: var(--rv-lagoon-ink); }
body.rv-std .rv-like-empty { text-align: center; }
body.rv-std .rv-like-empty p { color: var(--rv-ink2); margin: 0 0 16px; }
body.rv-std .rv-main .profile-feedback, body.rv-std .rv-main .profile-feedback * { word-break: normal; overflow-wrap: normal; hyphens: none; }
@media (max-width: 600px) {
  body.rv-std .rv-main .profile-feedback { order: 13; padding: 16px; margin-top: 22px; }
  body.rv-std .rv-main .profile-feedback summary { width: 100%; min-width: 0; box-sizing: border-box; }
}

/* The site typography sheet sets every h2 through --fs-heading-context with !important; the approved sizes are supplied the same way,
   and headings never break inside a word. */
body.rv-std .rv-main :is(.rv-ess, .rv-suit, .rv-like) h2 { --fs-heading-context: 27px; }
body.rv-std .rv-main .rv-chapter h2 { --fs-heading-context: clamp(25px, 3vw, 32px); }
body.rv-std .rv-main .rv-explore h2, body.rv-std .rv-main section.profile-feedback h2 { --fs-heading-context: 21px; }
body.rv-std .rv-main h1, body.rv-std .rv-main h2 { overflow-wrap: normal !important; word-break: normal !important; }
@media (max-width: 600px) {
  body.rv-std .rv-main :is(.rv-ess, .rv-suit) h2 { --fs-heading-context: 20px; }
  body.rv-std .rv-main .rv-like h2 { --fs-heading-context: 18px; }
  body.rv-std .rv-main .rv-chapter h2 { --fs-heading-context: 17px; }
  body.rv-std .rv-main section.profile-feedback h2 { --fs-heading-context: 20px; }
  body.rv-std .rv-main h1 { --fs-heading-page: 30px; font-size: 30px !important; }
}
