:root {
  --ofcv-blue: #002b68;
  --ofcv-blue-light: #174b99;
  --ofcv-red: #a80d2f;
  --ofcv-ink: #101725;
  --ofcv-muted: #617089;
  --ofcv-paper: #f4f6fa;
  --ofcv-line: #dbe1eb;
  --ofcv-card: #fff;
}

.ofcv-app {
  display: grid;
	grid-template-columns: minmax(0, 1fr);
  gap: 22px;
  color: var(--ofcv-ink);
  font-family: Arial, Helvetica, sans-serif;
}

.ofcv-loading,
.ofcv-message,
.ofcv-round-card,
.ofcv-account,
.ofcv-leaderboard,
.ofcv-finished-rounds {
  --ofcv-round-accent: var(--ofcv-red);
  margin: 0;
  padding: 0;
  border: 1px solid var(--ofcv-line);
  border-radius: 24px;
  background: var(--ofcv-card);
  box-shadow: 0 11px 28px rgb(0 43 104 / 6%);
  overflow: hidden;
}

.ofcv-account {
  padding: 22px;
}

.ofcv-account h2,
.ofcv-account h3 {
  margin-top: 0;
  color: var(--ofcv-blue);
}

.ofcv-section-heading h2 {
  margin-bottom: 18px;
}

.ofcv-auth-grid {
  display: grid;
  gap: 14px;
}

.ofcv-panel {
  margin: 0;
  padding: 18px;
  border: 1px solid var(--ofcv-line);
  border-radius: 16px;
  background: var(--ofcv-paper);
}

.ofcv-auth-accordion {
	padding: 0;
	overflow: hidden;
}

.ofcv-auth-accordion > summary {
	list-style: none;
	padding: 17px 19px;
	background: #eaf1fb;
	color: var(--ofcv-blue);
	font-size: 17px;
	font-weight: 900;
	cursor: pointer;
}

.ofcv-auth-accordion > summary::-webkit-details-marker { display: none; }
.ofcv-auth-accordion > summary::before {
	content: "+";
	display: inline-grid;
	width: 24px;
	height: 24px;
	margin-right: 10px;
	border-radius: 50%;
	place-items: center;
	background: var(--ofcv-blue);
	color: #fff;
}
.ofcv-auth-accordion[open] > summary::before { content: "\2212"; }
.ofcv-auth-accordion > form { padding: 18px 19px 19px; }
.ofcv-auth-accordion > form.ofcv-panel { border: 0; border-radius: 0; background: #fff; }

.ofcv-help-details {
	margin: 0 19px 19px;
	padding: 14px 16px;
	border: 1px solid var(--ofcv-line);
	border-radius: 12px;
	background: #f5f8fd;
}
.ofcv-help-details > summary { line-height: 1.45; }
.ofcv-help-details > form { margin-top: 16px; }

.ofcv-panel h3 {
  margin-bottom: 5px;
  font-size: 18px;
}

.ofcv-panel__intro {
  margin: 0 0 14px;
  color: var(--ofcv-muted);
  line-height: 1.5;
}

.ofcv-panel summary,
.ofcv-profile__management summary {
  color: var(--ofcv-blue);
  font-weight: 800;
  cursor: pointer;
}

.ofcv-recovery-form,
.ofcv-profile__management > .ofcv-auth-grid {
  margin-top: 16px;
}

.ofcv-field {
  display: grid;
  gap: 6px;
  margin-bottom: 13px;
}

.ofcv-field__label {
  font-weight: 700;
}

.ofcv-field input {
  box-sizing: border-box;
  width: 100%;
  min-height: 44px;
  padding: 9px 11px;
  border: 1px solid #b8c2d2;
  border-radius: 9px;
  background: #fff;
  color: var(--ofcv-ink);
  font: inherit;
}

.ofcv-field input:focus {
  border-color: var(--ofcv-blue-light);
  outline: 3px solid rgb(23 75 153 / 15%);
}

.ofcv-field input[readonly] {
	border-color: #cbd4e1;
	background: #eaf1fb;
	color: var(--ofcv-blue);
	cursor: default;
}

.ofcv-field__hint {
  color: var(--ofcv-muted);
  line-height: 1.4;
}

.ofcv-known-song {
	margin: 0 0 13px;
	padding: 10px 12px;
	border-left: 4px solid var(--ofcv-blue);
	border-radius: 9px;
	background: #eaf1fb;
	color: var(--ofcv-blue);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.45;
}

.ofcv-button {
  min-height: 42px;
  padding: 9px 16px;
  border: 1px solid var(--ofcv-blue);
  border-radius: 999px;
  background: var(--ofcv-blue);
  color: #fff;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.ofcv-button:hover,
.ofcv-button:focus-visible {
  background: var(--ofcv-blue-light);
}

.ofcv-button:disabled {
  cursor: wait;
  opacity: 0.6;
}

.ofcv-button--secondary,
.ofcv-button--quiet {
  background: #fff;
  color: var(--ofcv-blue);
}

.ofcv-button--quiet {
  border-color: transparent;
}

.ofcv-button--danger {
  border-color: var(--ofcv-red);
  background: var(--ofcv-red);
}

.ofcv-panel--danger {
  border-color: rgb(168 13 47 / 30%);
}

.ofcv-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 14px;
}

.ofcv-notice,
.ofcv-form-message,
.ofcv-recovery {
  padding: 12px 14px;
  border-radius: 12px;
  line-height: 1.5;
}

.ofcv-notice,
.ofcv-form-message--success {
	background: #19753a;
	color: #fff;
	box-shadow: 0 6px 16px rgb(25 117 58 / 18%);
	font-weight: 800;
	text-align: center;
}

.ofcv-notice--registration {
	margin: 0 0 18px;
	border: 2px solid #2f8545;
	box-shadow: 0 7px 18px rgb(24 95 42 / 10%);
	font-weight: 700;
}

.ofcv-form-message--error,
.ofcv-notice--error,
.ofcv-notice--logout {
	background: var(--ofcv-red);
	color: #fff;
	box-shadow: 0 6px 16px rgb(168 13 47 / 20%);
	font-weight: 800;
	text-align: center;
}

.ofcv-form-message--error::before {
	content: "\26A0";
	margin-right: 7px;
}

.ofcv-recovery {
  margin-bottom: 18px;
  border: 2px solid #d59b16;
  background: #fff8df;
}

.ofcv-recovery h3,
.ofcv-recovery p {
  margin-bottom: 8px;
}

.ofcv-recovery__code {
  display: inline-block;
  padding: 8px 10px;
  border-radius: 7px;
  background: #fff;
  color: var(--ofcv-ink);
  font-size: clamp(16px, 3vw, 21px);
  font-weight: 900;
  letter-spacing: 1px;
}

.ofcv-profile__summary {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 16px;
  border-radius: 16px;
  background: var(--ofcv-paper);
}

.ofcv-profile__name,
.ofcv-profile__login {
  display: block;
}

.ofcv-profile__name {
  color: var(--ofcv-blue);
  font-size: 19px;
}

.ofcv-profile__login {
  margin-top: 3px;
  color: var(--ofcv-muted);
}

.ofcv-profile__management {
  margin-top: 14px;
}

.ofcv-profile__activity {
	margin-top: 14px;
	overflow: hidden;
	border: 1px solid var(--ofcv-line);
	border-radius: 16px;
	background: #fff;
}

.ofcv-profile__activity > summary,
.ofcv-leaderboard > summary {
	list-style: none;
}

.ofcv-profile__activity > summary::-webkit-details-marker,
.ofcv-leaderboard > summary::-webkit-details-marker {
	display: none;
}

.ofcv-activity-summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 14px 16px;
	background: #eaf1fb;
	color: var(--ofcv-blue);
	cursor: pointer;
}

.ofcv-activity-summary::before {
	content: "+";
	display: grid;
	flex: 0 0 auto;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	place-items: center;
	background: var(--ofcv-blue);
	color: #fff;
	font-size: 17px;
	line-height: 1;
}

.ofcv-profile__activity[open] .ofcv-activity-summary::before {
	content: "\2212";
}

.ofcv-activity-summary > strong {
	flex: 1 1 auto;
}

.ofcv-user-points-badge,
.ofcv-given-points {
	display: inline-block;
	padding: 4px 9px;
	border-radius: 999px;
	background: var(--ofcv-red);
	color: #fff;
	font-size: 12px;
	font-weight: 900;
}

.ofcv-activity-body {
	padding: 16px;
	border-top: 1px solid var(--ofcv-line);
}

.ofcv-activity-metrics {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 9px;
}

.ofcv-activity-metric {
	padding: 11px;
	border-radius: 11px;
	background: var(--ofcv-paper);
	text-align: center;
}

.ofcv-activity-metric strong,
.ofcv-activity-metric span {
	display: block;
}

.ofcv-activity-metric strong {
	color: var(--ofcv-blue);
	font-size: 20px;
}

.ofcv-activity-metric span {
	margin-top: 3px;
	color: var(--ofcv-muted);
	font-size: 11px;
	line-height: 1.3;
}

.ofcv-activity-section {
	margin-top: 18px;
}

.ofcv-activity-section h3 {
	margin: 0 0 9px;
	color: var(--ofcv-blue);
	font-size: 17px;
}

.ofcv-activity-list {
	display: grid;
	gap: 8px;
}

.ofcv-activity-item {
	padding: 11px 12px;
	border: 1px solid var(--ofcv-line);
	border-radius: 11px;
	background: var(--ofcv-paper);
}

.ofcv-activity-item__heading,
.ofcv-activity-item__facts {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 6px 12px;
}

.ofcv-activity-item__heading > strong {
	min-width: 0;
	color: var(--ofcv-blue);
}

.ofcv-activity-item p {
	margin: 4px 0 0;
	color: var(--ofcv-muted);
	font-size: 12px;
}

.ofcv-activity-item__facts {
	justify-content: flex-start;
	margin-top: 8px;
	color: var(--ofcv-muted);
	font-size: 12px;
	font-weight: 700;
}

.ofcv-mini-rank {
	display: inline-block;
	padding: 3px 8px;
	border-radius: 999px;
	background: var(--ofcv-blue);
	color: #fff;
	font-size: 11px;
	font-weight: 900;
}

.ofcv-alltime-position {
	display: inline-block;
	padding: 4px 8px;
	border-radius: 999px;
	background: #f7e8ec;
	color: var(--ofcv-red);
	font-weight: 900;
}

.ofcv-check {
  display: block;
  margin: 14px 0;
  line-height: 1.45;
}

.ofcv-submission,
.ofcv-entry-section {
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid var(--ofcv-line);
}

.ofcv-submission summary {
	display: block;
	padding: 12px 14px;
	border-left: 5px solid var(--ofcv-blue-light);
	border-radius: 10px;
	background: var(--ofcv-blue);
	color: #fff;
  font-weight: 900;
  cursor: pointer;
}

.ofcv-submission summary:hover,
.ofcv-submission summary:focus-visible { background: var(--ofcv-blue-light); color: #fff; }

.ofcv-submission summary::before {
	content: "\25b8";
	display: inline-block;
	margin-right: 7px;
}

.ofcv-submission[open] summary {
	border-radius: 10px 10px 0 0;
}

.ofcv-submission[open] summary::before {
	content: "\25be";
}

.ofcv-inline-form,
.ofcv-confirm-song {
  margin-top: 15px;
}

.ofcv-video-preview {
  display: grid;
  grid-template-columns: minmax(100px, 150px) 1fr;
  gap: 13px;
  align-items: center;
  margin: 16px 0;
  padding: 11px;
  border: 1px solid var(--ofcv-line);
  border-radius: 12px;
  background: var(--ofcv-paper);
}

.ofcv-video-preview img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 8px;
  object-fit: cover;
}

.ofcv-video-preview__content strong,
.ofcv-video-preview__content span {
  display: block;
}

.ofcv-video-preview__content span {
  margin-top: 5px;
  color: var(--ofcv-muted);
}

.ofcv-entry-section h3 {
  margin-bottom: 12px;
  font-size: 18px;
}

.ofcv-entry-list {
  display: grid;
  gap: 10px;
}

.ofcv-round-period {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 5px 14px;
	margin: 0 0 10px;
	padding: 10px 13px;
	border-left: 4px solid #0c5231;
	border-radius: 10px;
	background: #187243;
	color: #fff;
	font-size: 13px;
	line-height: 1.45;
}

.ofcv-round-period strong,
.ofcv-round-period span {
	display: block;
}

.ofcv-round-period--finished {
	border-left-color: #8a6410;
	background: #72520d;
}

.ofcv-entry {
  display: grid;
  grid-template-columns: minmax(150px, 180px) minmax(0, 1fr);
  gap: 12px;
	align-items: start;
  overflow: hidden;
  border: 1px solid var(--ofcv-line);
  border-radius: 12px;
  background: var(--ofcv-paper);
}

.ofcv-entry--rank-1 {
	border-color: rgb(196 151 24 / 78%);
	box-shadow: 0 0 0 1px rgb(196 151 24 / 16%);
}

.ofcv-entry--rank-2 {
	border-color: rgb(156 165 177 / 82%);
	box-shadow: 0 0 0 1px rgb(156 165 177 / 16%);
}

.ofcv-entry--rank-3 {
	border-color: rgb(174 105 55 / 76%);
	box-shadow: 0 0 0 1px rgb(174 105 55 / 14%);
}

.ofcv-entry__media > img {
  width: 100%;
	height: auto;
	min-height: 0;
	aspect-ratio: 16 / 9;
  object-fit: cover;
}

.ofcv-entry__media {
	display: grid;
	gap: 8px;
	align-content: start;
	min-width: 0;
	padding-bottom: 12px;
}

.ofcv-youtube-button {
	display: block;
	margin: 0 10px;
	padding: 7px 9px;
	border: 1px solid var(--ofcv-blue);
	border-radius: 999px;
	background: #fff;
	color: var(--ofcv-blue);
	font-size: 12px;
	font-weight: 800;
	line-height: 1.25;
	text-align: center;
	text-decoration: none;
}

.ofcv-youtube-button:hover,
.ofcv-youtube-button:focus-visible {
	background: var(--ofcv-blue);
	color: #fff;
}

.ofcv-entry__media-meta {
	display: block;
	padding: 0 11px;
	color: var(--ofcv-muted);
	font-size: 10px;
	line-height: 1.35;
	text-align: center;
	overflow-wrap: anywhere;
}

.ofcv-entry__placeholder {
	display: grid;
	min-height: 0;
	aspect-ratio: 16 / 9;
	place-items: center;
	background: linear-gradient(145deg, var(--ofcv-blue), var(--ofcv-blue-light));
	color: #fff;
	font-size: 35px;
	font-weight: 900;
}

.ofcv-entry__placeholder--consent {
	align-content: center;
	gap: 5px;
	padding: 10px 7px;
	text-align: center;
}

.ofcv-entry__placeholder--consent strong,
.ofcv-entry__placeholder--consent small {
	display: block;
	line-height: 1.25;
}

.ofcv-entry__placeholder--consent strong {
	font-size: 11px;
}

.ofcv-entry__placeholder--consent small {
	font-size: 9px;
}

.ofcv-entry__music {
	font-size: 25px;
	line-height: 1;
}

.ofcv-consent-button {
	padding: 5px 7px;
	border: 1px solid #fff;
	border-radius: 999px;
	background: #fff;
	color: var(--ofcv-blue);
	font: inherit;
	font-size: 9px;
	font-weight: 800;
	cursor: pointer;
}

.ofcv-entry__content {
  min-width: 0;
	padding: 12px 12px 12px 0;
}

.ofcv-entry__content h4,
.ofcv-entry__content p {
  margin: 0 0 5px;
}

.ofcv-entry__content h4 {
  color: var(--ofcv-blue);
  font-size: 16px;
}

.ofcv-entry__content p {
  color: var(--ofcv-muted);
  font-size: 13px;
}

.ofcv-entry__status {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin-top: 13px;
}

.ofcv-rank,
.ofcv-own-entry {
  display: inline-block;
  margin: 0 7px 6px 0;
  padding: 3px 8px;
  border-radius: 999px;
  background: var(--ofcv-blue);
  color: #fff;
  font-size: 11px;
  font-weight: 900;
}

.ofcv-own-entry {
	margin: 0;
  background: var(--ofcv-red);
}

.ofcv-points {
  display: inline-block;
	margin: 0;
  color: var(--ofcv-blue);
  font-size: 13px;
  font-weight: 900;
}

.ofcv-budget {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 5px 12px;
  margin: 0 0 12px;
  padding: 11px 13px;
  border-radius: 11px;
  background: #eaf1fb;
  color: var(--ofcv-blue);
}

.ofcv-budget strong,
.ofcv-budget span {
  display: block;
}

.ofcv-entry-section > .ofcv-budget { margin: 0 0 24px; }

.ofcv-vote-control {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-top: 10px;
  padding-top: 9px;
  border-top: 1px solid var(--ofcv-line);
  color: var(--ofcv-muted);
  font-size: 12px;
  font-weight: 700;
}

.ofcv-vote-control > span:first-child { flex: 1 1 210px; }
.ofcv-vote-choice { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 8px; }
.ofcv-vote-prompt {
	flex: 0 0 auto;
	padding: 6px 9px;
	border-radius: 8px;
	background: var(--ofcv-blue);
	color: #fff;
	font-size: 11px;
	font-weight: 900;
}

.ofcv-vote-control input {
  width: 72px;
  min-height: 38px;
  border: 1px solid #aeb9ca;
  border-radius: 8px;
  background: #fff;
  color: var(--ofcv-ink);
  font: inherit;
  font-size: 16px;
  text-align: center;
}

.ofcv-vote-note {
  margin-top: 9px !important;
  font-size: 12px;
  font-weight: 700;
}

.ofcv-vote-footer {
  position: sticky;
  bottom: 10px;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-top: 13px;
  padding: 11px;
  border: 1px solid var(--ofcv-line);
  border-radius: 14px;
  background: rgb(255 255 255 / 96%);
  box-shadow: 0 8px 20px rgb(0 43 104 / 12%);
}

.ofcv-report {
	margin-top: 10px;
	font-size: 12px;
}

.ofcv-report summary {
	color: var(--ofcv-muted);
	cursor: pointer;
	font-weight: 700;
}

.ofcv-report__fields {
	display: grid;
	gap: 7px;
	margin-top: 8px;
}

.ofcv-report__fields select,
.ofcv-report__fields textarea {
	box-sizing: border-box;
	width: 100%;
	padding: 8px;
	border: 1px solid #b8c2d2;
	border-radius: 8px;
	background: #fff;
	color: var(--ofcv-ink);
	font: inherit;
}

.ofcv-report--media {
	margin: 2px 10px 0;
}

.ofcv-report--media summary {
	text-align: center;
}

.ofcv-report--media .ofcv-report__fields {
	margin-top: 9px;
}

.ofcv-report--media .ofcv-button {
	width: 100%;
	min-height: 36px;
	padding: 7px 9px;
	font-size: 11px;
}

.ofcv-round-card > summary {
	list-style: none;
}

.ofcv-round-card > summary::-webkit-details-marker {
	display: none;
}

.ofcv-round-summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	min-height: 148px;
	box-sizing: border-box;
	padding: 15px 24px 15px 15px;
	border-left: 6px solid var(--ofcv-round-accent);
	background: #fff;
	cursor: pointer;
}

.ofcv-round-summary:hover,
.ofcv-round-summary:focus-visible {
	background: var(--ofcv-paper);
}

.ofcv-round-summary:focus-visible {
	outline: 3px solid rgb(23 75 153 / 22%);
	outline-offset: -3px;
}

.ofcv-round-summary__text {
	display: grid;
	flex: 1 1 auto;
	gap: 6px;
	min-width: 0;
}

.ofcv-round-summary__image {
	display: block;
	flex: 0 0 220px;
	width: 220px;
	aspect-ratio: 16 / 9;
	border-radius: 10px;
	background: var(--ofcv-paper);
	object-fit: cover;
}

.ofcv-round-summary__text .ofcv-eyebrow {
	margin: 0 !important;
}

.ofcv-round-summary__text strong {
	color: var(--ofcv-blue);
	font-size: 21px;
	line-height: 1.25;
}

.ofcv-round-summary__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 7px 10px;
	margin-top: 4px;
}

.ofcv-round-state {
	display: inline-flex;
	align-items: center;
	min-height: 25px;
	padding: 3px 9px;
	border-radius: 999px;
	color: #fff;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: 0.45px;
	text-transform: uppercase;
}

.ofcv-round-state--active { background: #187243; }
.ofcv-round-state--finished { background: #72520d; }

.ofcv-round-summary__facts {
	color: var(--ofcv-muted);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.4;
}

.ofcv-round-summary__action {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 7px;
	padding: 8px 12px;
	border: 1px solid #bfd0e6;
	border-radius: 999px;
	background: #f4f8fd;
	color: var(--ofcv-blue);
	font-size: 12px;
	font-weight: 800;
}

.ofcv-round-summary__action::before {
	content: "+";
	display: grid;
	width: 25px;
	height: 25px;
	border-radius: 50%;
	place-items: center;
	background: var(--ofcv-blue);
	color: #fff;
	font-size: 18px;
	line-height: 1;
}

.ofcv-round-card[open] .ofcv-round-summary {
	min-height: 148px;
	padding: 15px 24px 15px 15px;
	border-bottom: 1px solid var(--ofcv-line);
}

.ofcv-round-card[open] .ofcv-round-summary__action::before {
	content: "\2212";
}

.ofcv-round-card--finished {
	--ofcv-round-accent: #9b741b;
}

.ofcv-round-card--finished .ofcv-round-summary {
	background: #fffcf4;
}

.ofcv-round-card--finished .ofcv-round-summary:hover,
.ofcv-round-card--finished .ofcv-round-summary:focus-visible {
	background: #fff8e7;
}

.ofcv-finished-rounds > summary {
	list-style: none;
}

.ofcv-finished-rounds > summary::-webkit-details-marker {
	display: none;
}

.ofcv-finished-rounds__summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 78px;
	box-sizing: border-box;
	padding: 15px 20px;
	border-left: 6px solid #9b741b;
	background: #fffcf4;
	cursor: pointer;
}

.ofcv-finished-rounds__summary:hover,
.ofcv-finished-rounds__summary:focus-visible {
	background: #fff8e7;
}

.ofcv-finished-rounds__heading {
	display: grid;
	gap: 4px;
}

.ofcv-finished-rounds__heading .ofcv-eyebrow {
	margin: 0 !important;
	color: #72520d !important;
}

.ofcv-finished-rounds__heading strong {
	color: var(--ofcv-blue);
	font-size: 18px;
}

.ofcv-finished-rounds__action {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: var(--ofcv-blue);
	font-size: 12px;
	font-weight: 800;
}

.ofcv-finished-rounds__action::before {
	content: "+";
	display: grid;
	width: 25px;
	height: 25px;
	border-radius: 50%;
	place-items: center;
	background: #72520d;
	color: #fff;
	font-size: 18px;
	line-height: 1;
}

.ofcv-finished-rounds[open] .ofcv-finished-rounds__action::before {
	content: "\2212";
}

.ofcv-finished-rounds__body {
	display: grid;
	gap: 18px;
	padding: 18px;
	border-top: 1px solid #eadcb9;
	background: #fffdf8;
}

.ofcv-leaderboard__summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 78px;
	box-sizing: border-box;
	padding: 15px 20px;
	border-left: 6px solid var(--ofcv-red);
	background: #fff;
	cursor: pointer;
}

.ofcv-leaderboard__summary:hover,
.ofcv-leaderboard__summary:focus-visible {
	background: var(--ofcv-paper);
}

.ofcv-leaderboard__heading {
	display: grid;
	gap: 4px;
}

.ofcv-leaderboard__heading .ofcv-eyebrow {
	margin: 0 !important;
}

.ofcv-leaderboard__heading strong {
	color: var(--ofcv-blue);
	font-size: 18px;
}

.ofcv-leaderboard__action {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: var(--ofcv-blue);
	font-size: 12px;
	font-weight: 800;
}

.ofcv-leaderboard__action::before {
	content: "+";
	display: grid;
	width: 25px;
	height: 25px;
	border-radius: 50%;
	place-items: center;
	background: var(--ofcv-blue);
	color: #fff;
	font-size: 18px;
	line-height: 1;
}

.ofcv-leaderboard[open] .ofcv-leaderboard__action::before {
	content: "\2212";
}

.ofcv-leaderboard__body {
	padding: 18px 20px 20px;
	border-top: 1px solid var(--ofcv-line);
}

.ofcv-loading-inline {
	margin: 0;
	color: var(--ofcv-muted);
}

.ofcv-leaderboard-list {
	display: grid;
	gap: 7px;
	margin-top: 13px;
}

.ofcv-leaderboard-row {
	display: grid;
	grid-template-columns: 38px minmax(0, 1fr) auto auto;
	align-items: center;
	gap: 8px 14px;
	padding: 10px 12px;
	border: 1px solid var(--ofcv-line);
	border-radius: 11px;
	background: var(--ofcv-paper);
}

.ofcv-leaderboard-rank {
	display: grid;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	place-items: center;
	background: var(--ofcv-blue);
	color: #fff;
	font-size: 12px;
	font-weight: 900;
}

.ofcv-leaderboard-name,
.ofcv-leaderboard-points {
	color: var(--ofcv-blue);
}

.ofcv-leaderboard-submissions {
	color: var(--ofcv-muted);
	font-size: 12px;
}

.ofcv-leaderboard-row--rank-1 {
	border-color: rgb(196 151 24 / 70%);
}

.ofcv-leaderboard-row--rank-2 {
	border-color: rgb(156 165 177 / 78%);
}

.ofcv-leaderboard-row--rank-3 {
	border-color: rgb(174 105 55 / 70%);
}

.ofcv-leaderboard-row--me {
	box-shadow: inset 4px 0 0 var(--ofcv-red);
}

.ofcv-round-card__image {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 7;
  background: var(--ofcv-paper);
  object-fit: cover;
}

.ofcv-round-card__content {
  padding: 22px;
  border-top: 4px solid var(--ofcv-round-accent);
}

.ofcv-message--error {
  border-color: rgb(168 13 47 / 35%);
}

.ofcv-message h2,
.ofcv-round-card h2 {
  margin: 0 0 8px;
  color: var(--ofcv-blue);
}

.ofcv-message p,
.ofcv-round-card p {
  margin: 0;
  color: var(--ofcv-muted);
  line-height: 1.55;
}

.ofcv-eyebrow {
  margin-bottom: 7px !important;
  color: var(--ofcv-round-accent) !important;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 1.1px;
  text-transform: uppercase;
}

@media (min-width: 760px) {
  .ofcv-message,
  .ofcv-loading,
  .ofcv-account,
  .ofcv-leaderboard,
	.ofcv-finished-rounds,
  .ofcv-round-card {
    grid-column: 1 / -1;
  }

  .ofcv-auth-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

	.ofcv-auth-grid--public { grid-template-columns: 1fr; }

  .ofcv-panel--wide,
  .ofcv-panel--danger {
    grid-column: 1 / -1;
  }
}

@media (min-width: 481px) and (max-width: 700px) {
	.ofcv-round-summary,
	.ofcv-round-card[open] .ofcv-round-summary { min-height: 125px; padding: 13px 17px; }
	.ofcv-round-summary__image { flex-basis: 155px; width: 155px; }
	.ofcv-round-summary__text strong { font-size: 18px; }
}

@media (max-width: 480px) {
	.ofcv-app { gap: 26px; }
	.ofcv-account { padding: 20px 16px; }
	.ofcv-round-card,
	.ofcv-leaderboard,
	.ofcv-finished-rounds { border-width: 2px; box-shadow: 0 14px 28px rgb(0 43 104 / 11%); }
	.ofcv-round-summary,
	.ofcv-round-card[open] .ofcv-round-summary { min-height: 110px; padding: 14px 15px; }
	.ofcv-round-card__content,
	.ofcv-leaderboard__body { padding: 22px 17px; }
	.ofcv-auth-grid { gap: 16px; }
	.ofcv-auth-accordion > summary { padding: 17px 15px; }
	.ofcv-auth-accordion > form { padding: 19px 15px; }
	.ofcv-activity-metrics {
		grid-template-columns: 1fr;
	}

	.ofcv-activity-metric {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		text-align: left;
	}

	.ofcv-activity-metric span {
		margin: 0;
		text-align: right;
	}

	.ofcv-leaderboard__action {
		font-size: 0;
	}

	.ofcv-finished-rounds__action {
		font-size: 0;
	}

	.ofcv-leaderboard-row {
		grid-template-columns: 34px minmax(0, 1fr) auto;
		gap: 6px 9px;
	}

	.ofcv-leaderboard-submissions {
		grid-column: 2 / -1;
		grid-row: 2;
	}

	.ofcv-leaderboard-points {
		font-size: 13px;
	}

	.ofcv-round-summary {
		gap: 10px;
		min-height: 110px;
		padding: 14px 15px;
	}

	.ofcv-round-summary__image {
		flex-basis: 100px;
		width: 100px;
		border-radius: 8px;
	}

	.ofcv-round-summary__text strong {
		font-size: 16px;
	}

	.ofcv-round-summary__action {
		padding: 0;
		border: 0;
		background: transparent;
		font-size: 0;
	}

	.ofcv-round-summary__meta {
		gap: 5px;
	}

	.ofcv-round-summary__facts {
		display: block;
		width: 100%;
		font-size: 10px;
	}

	.ofcv-finished-rounds__body {
		gap: 16px;
		padding: 14px;
	}

	.ofcv-round-card[open] .ofcv-round-summary {
		min-height: 110px;
		padding: 14px 15px;
	}

	.ofcv-video-preview,
  .ofcv-entry {
    grid-template-columns: 1fr;
  }

	.ofcv-entry__media > img {
		aspect-ratio: 16 / 9;
		min-height: 0;
	}

	.ofcv-entry__placeholder {
		min-height: 82px;
	}

	.ofcv-entry__media {
		padding-bottom: 14px;
		border-bottom: 1px solid var(--ofcv-line);
	}

	.ofcv-entry__content {
		padding: 0 12px 12px;
	}
}
