/* RIVET v3 — live-site layer on top of the captured design CSS. */

/* Anything the page script or the platform hides stays hidden, even when the
   design gave the element an inline display value. */
[hidden] { display: none !important; }

/* A collection template only survives when the live list could not load:
   never show its sample content. */
[data-cr-item] { display: none !important; }

/* An empty (or failed) live list takes no room in the design's grids; the
   page shows its own "nothing here yet" card instead. */
[data-cr-list][data-cr-list-state="empty"],
[data-cr-list][data-cr-list-state="unavailable"]:not([data-rv-cards]),
[data-cr-list][data-cr-list-state="misconfigured"] { display: none !important; }

/* Hidden helpers that carry live values for the page script. */
[data-rv-data] { display: none !important; }

/* Buttons converted from links keep the design's inline look. */
button[data-rv-btn] {
  font-family: inherit;
  border: 0;
  background: none;
  color: inherit;
  cursor: pointer;
  text-align: inherit;
  line-height: inherit;
  margin: 0;
}
footer button[data-rv-btn] { padding: 0; font-size: inherit; text-align: left; }

[data-rv-go], [data-rv-toggle], [data-rv-chip], [data-rv-choice], [data-rv-ics], a[role="button"] { cursor: pointer; }
a[role="button"] { -webkit-user-select: none; user-select: none; }
[data-rv-go]:focus-visible, [data-rv-toggle]:focus-visible, [data-rv-chip]:focus-visible,
[data-rv-choice]:focus-visible, [data-rv-ics]:focus-visible, button[data-rv-btn]:focus-visible, a[role="button"]:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}

/* Social icons with no configured link disappear instead of going nowhere. */
a[data-rv-social]:not([href]) { display: none !important; }
a[data-rv-hide-nohref]:not([href]) { display: none !important; }

/* Pager buttons at the first / last page. */
[data-rv-off] { opacity: 0.38; cursor: default !important; pointer-events: none; }

/* Platform actions while a request is in flight. */
[data-cr-action][aria-busy="true"], [data-rv-app-submit][aria-busy="true"] { opacity: 0.6; pointer-events: none; }
[data-cr-action][data-cr-error="true"] { outline: 2px solid #d92d20; outline-offset: 2px; }

/* Follow toggle: following state reads as "joined". */
[data-cr-action="creator.follow-toggle"][data-cr-state="following"] { opacity: 0.92; }

/* Apply wizard: choices, chips and messages. */
[data-rv-choice] { transition: background-color 0.12s, color 0.12s, border-color 0.12s; }
[data-rv-choice][aria-pressed="true"] {
  background: rgb(17, 17, 17) !important;
  color: rgb(255, 255, 255) !important;
  border-color: rgb(17, 17, 17) !important;
}
[data-rv-chipbox]:has(input:checked) {
  background: rgb(17, 17, 17) !important;
  color: rgb(255, 255, 255) !important;
  border-color: rgb(17, 17, 17) !important;
}
[data-rv-chipbox]:has(input:checked) input { accent-color: rgb(255, 255, 255) !important; }
[data-rv-cardbox]:has(input:checked) {
  border-color: rgb(17, 17, 17) !important;
  box-shadow: 0 0 0 1px rgb(17, 17, 17) inset !important;
}
[data-rv-step-error], [data-cr-application-error] {
  margin: 18px 0 0;
  padding: 12px 14px;
  border-radius: 8px;
  background: rgb(254, 243, 242);
  border: 1px solid rgb(254, 205, 202);
  color: rgb(180, 35, 24);
  font-size: 14px;
  line-height: 1.45;
}
[data-cr-application-closed] {
  margin: 0 auto;
  padding: 14px 18px;
  border-radius: 0;
  background: rgb(17, 17, 17);
  color: rgb(255, 255, 255);
  font-size: 14px;
  line-height: 1.5;
}
form[data-cr-form="application"] { margin: 0; }
[data-rv-apps-closed] [data-rv-app-submit] { opacity: 0.4; pointer-events: none; }

/* Empty-state cards built from the design's own card styles. */
[data-rv-empty] p { margin: 0; }

/* Images with no live source: keep the slot's dark placeholder. */
[data-rv-noimg] { background: linear-gradient(135deg, rgb(28, 28, 28), rgb(10, 10, 10)) !important; }

/* Long live text inside fixed design boxes. */
[data-rv-clamp2] { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
[data-rv-clamp3] { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
[data-rv-ellipsis] { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
[data-rv-prewrap] { white-space: pre-line; }

/* Single page of results: the pager reads "Showing 1–n of n". */
[data-rv-pager][data-rv-single] [data-rv-prev], [data-rv-pager][data-rv-single] [data-rv-next] { opacity: 0.38; pointer-events: none; }
