/**
 * Reviews route only — wins over stale global.css / CDN cache (weight + !important).
 * Scope: .reviewsPage
 */.reviewsPage__messages{
  margin: 0 0 18px;
}.reviewsPage__messages [data-drupal-messages],
.reviewsPage__messages .ac-drupal-messages{
  margin-bottom: 0;
}/* Moderator: official reply on Community review cards */ .reviewsPage .reviewCard__modReply{
  margin-top: 10px;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(167, 139, 250, 0.35);
  background: rgba(99, 102, 241, 0.1);
}.reviewsPage .reviewCard__modReplyTitle{
  margin: 0 0 6px;
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(196, 181, 253, 0.95);
}.reviewsPage .reviewCard__modReplyHint{
  margin: 0 0 10px;
  font-size: 0.78rem;
  line-height: 1.45;
  color: rgba(255, 255, 255, 0.55);
  font-weight: 500;
}.reviewsPage .reviewCard__modReplyError{
  margin: 0;
  font-size: 0.85rem;
  color: #fca5a5;
  font-weight: 600;
}.reviewsPage .reviewCard__modReplyTextarea{
  width: 100%;
  max-width: 100%;
  min-height: 96px;
  margin-bottom: 10px;
  padding: 10px 12px;
  font-size: 0.88rem;
  font-family: inherit;
  color: #fff;
  background: rgba(0, 0, 0, 0.35);
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 10px;
  resize: vertical;
}.reviewsPage .reviewCard__modReplyTextarea::placeholder{
  color: rgba(255, 255, 255, 0.35);
}.reviewsPage .reviewCard__modReplyForm .form-actions{
  margin: 0;
}.reviewsPage .reviewCard__modReplySubmit{
  width: 100%;
  justify-content: center;
}.reviewsPage .reviewCard__reply--preview{
  margin-top: 10px;
  opacity: 0.92;
}/* Submit must stay clearly clickable (no accidental dimming from other layers). */ .reviewsPage .reviewComposer__submit.button,
.reviewsPage .reviewComposer__submit.js-form-submit{
  pointer-events: auto !important;
  opacity: 1 !important;
  cursor: pointer !important;
}.reviewsPage .reviewComposer__submit.button:disabled,
.reviewsPage .reviewComposer__submit.js-form-submit:disabled{
  opacity: 0.55 !important;
  cursor: not-allowed !important;
}/* Submit above .arbiSticker (z-index 9999) — otherwise taps hit the launcher,
not the button */ .reviewsPage .reviewComposer--form .form-actions{
  position: relative !important;
  z-index: 10060 !important;
}.reviewsPage .reviewComposer__submit{
  position: relative !important;
  z-index: 1 !important;
}@media (max-width: 980px){
  .reviewsPage .arbiSticker {
    bottom: calc(88px + env(safe-area-inset-bottom, 0px)) !important;
  }
}/* Whole composer (not only .form-actions) above fixed .arbiSticker so taps reach fields + submit */ .reviewsPage .reviewComposerDisclosure__body{
  position: relative !important;
  z-index: 10070 !important;
}/* “About a minute” + chevron: plain white (override any gradient text) */ .reviewsPage .reviewComposerDisclosure__hint{
  color: #fff !important;
  background-image: none !important;
  -webkit-text-fill-color: #fff !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
}.reviewsPage .reviewComposerDisclosure__chev{
  border-top-color: rgba(255, 255, 255, 0.9) !important;
}/* * City / name text fields: same surface as “Buyer” select + review textarea. * Browsers often force a light autofill/UA paint on <input> even when textarea matches theme. */ .reviewsPage .reviewComposer--form input.reviewComposer__input.form-text,
.reviewsPage .reviewComposer--form input.reviewComposer__input{
  appearance: none !important;
  -webkit-appearance: none !important;
  color: #fff !important;
  background-color: rgba(0, 0, 0, 0.35) !important;
  background-image: none !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  border-radius: 12px !important;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.25) !important;
}.reviewsPage .reviewComposer--form input.reviewComposer__input::placeholder{
  color: rgba(255, 255, 255, 0.35) !important;
  font-weight: 500 !important;
}.reviewsPage .reviewComposer--form input.reviewComposer__input:focus{
  outline: none !important;
  border-color: rgba(255, 255, 255, 0.26) !important;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.25) !important;
}/* Textarea: no colored focus ring (same neutral treatment as role dropdown). */ .reviewsPage .reviewComposer--form textarea.reviewComposer__textarea:focus{
  outline: none !important;
  border-color: rgba(255, 255, 255, 0.26) !important;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.25) !important;
}.reviewsPage .reviewComposer--form input.reviewComposer__input:-webkit-autofill,
.reviewsPage .reviewComposer--form input.reviewComposer__input:-webkit-autofill:hover,
.reviewsPage .reviewComposer--form input.reviewComposer__input:-webkit-autofill:focus{
  -webkit-text-fill-color: #fff !important;
  caret-color: #fff !important;
  box-shadow: inset 0 0 0 100px rgba(0, 0, 0, 0.35) !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  transition: background-color 99999s ease-out 0s !important;
}/* Rating: vertical rows — premium pill label + stars reveal on hover / focus / selected (.reviewsPage). */ .reviewsPage .reviewComposer__ratingOuter{
  border: none !important;
  padding: 0 !important;
  margin-top: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
}/* UA default fieldset = groove border (reads as thin white/gray rectangle) */ .reviewsPage .reviewComposer--form .reviewComposer__ratingOuter > fieldset,
.reviewsPage .reviewComposer--form .reviewComposer__ratingOuter fieldset.fieldgroup,
.reviewsPage .reviewComposer--form .reviewComposer__ratingOuter fieldset.form-composite,
.reviewsPage .reviewComposer__ratingOuter fieldset.fieldgroup.form-composite{
  border: 0 !important;
  border-width: 0 !important;
  border-style: none !important;
  border-color: transparent !important;
  border-image: none !important;
  -webkit-border-image: none !important;
  margin: 0 !important;
  padding: 0 !important;
  min-width: 0 !important;
  min-inline-size: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
}.reviewsPage .reviewComposer--form .reviewComposer__ratingOuter fieldset:focus,
.reviewsPage .reviewComposer--form .reviewComposer__ratingOuter fieldset:focus-visible{
  outline: none !important;
  box-shadow: none !important;
}.reviewsPage .reviewComposer__ratingOuter fieldset.fieldgroup .fieldset-wrapper{
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}/* Legend stays in DOM for a11y (visually-hidden from core); belt-and-suspenders */ .reviewsPage .reviewComposer__ratingOuter fieldset.fieldgroup legend,
.reviewsPage .reviewComposer__ratingOuter fieldset.fieldgroup .fieldset-legend{
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}/* Vertical stack: each row = pill label (left) + stars track (right) */ .reviewsPage .reviewComposer__ratingOuter #edit-rating,
.reviewsPage .reviewComposer__ratingRadiosRoot{
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  outline: none !important;
  box-shadow: none !important;
  width: 100% !important;
  max-width: min(100%, 420px) !important;
}/* One row: [hidden input] + pill + stars (stars pushed right, vertically centered) */ .reviewsPage .reviewComposer__ratingOuter .form-type-radio{
  position: relative !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 6px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  min-height: 0 !important;
  cursor: pointer !important;
  border-radius: 14px !important;
}/* Dark — compact luxury pills: matte navy,
fixed width,
restrained indigo active glow */ .reviewsPage .reviewComposer__ratingOuter .form-type-radio label.option{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 14px !important;
  box-sizing: border-box !important;
  height: 34px !important;
  min-height: 34px !important;
  width: 9.75rem !important;
  min-width: 9.75rem !important;
  max-width: 9.75rem !important;
  border-radius: 999px !important;
  border: 1px solid rgba(100, 116, 139, 0.22) !important;
  background: linear-gradient(180deg, #1a2338 0%, #0f1729 100%) !important;
  color: #f8fafc !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
  line-height: 1.2 !important;
  cursor: pointer !important;
  outline: none !important;
  transition:
    background 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease,
    transform 0.22s ease !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045) !important;
}.reviewsPage .reviewComposer__ratingOuter .form-type-radio:hover label.option{
  border-color: rgba(148, 163, 184, 0.35) !important;
  background: linear-gradient(180deg, #1e2a42 0%, #121a2e 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    0 4px 14px rgba(0, 0, 0, 0.22) !important;
  transform: translateY(-1px) !important;
}/* Selected: subtle indigo accent — stars stay the hero */ .reviewsPage .reviewComposer__ratingOuter .form-type-radio:has(input:checked) label.option{
  border-color: rgba(129, 140, 248, 0.4) !important;
  background: linear-gradient(165deg, rgba(55, 48, 120, 0.45) 0%, rgba(15, 23, 42, 0.96) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.07),
    0 0 0 1px rgba(99, 102, 241, 0.22),
    0 0 28px rgba(79, 70, 229, 0.14) !important;
  color: #fff !important;
  transform: none !important;
}/* No visible radio control at all */ .reviewsPage .reviewComposer__ratingOuter .form-type-radio input.form-radio{
  position: absolute !important;
  left: -10000px !important;
  top: 0 !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
}/* Override global “focus + label” ring so mouse focus has no frame; keyboard keeps :focus-visible */ .reviewsPage .reviewComposer__ratingOuter .form-type-radio input.form-radio:focus + label.option{
  outline: none !important;
}.reviewsPage .reviewComposer__ratingOuter .form-type-radio input.form-radio:focus-visible + label.option{
  outline: 2px solid rgba(236, 72, 153, 0.45) !important;
  outline-offset: 3px !important;
}/* Star track: sits tight next to the pill (no flex-grow / margin-auto stretch) */ .reviewsPage .reviewComposer__ratingStarsPreview{
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex: 0 0 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  margin-left: 0 !important;
  padding: 0 !important;
  gap: 4px !important;
  flex-shrink: 0 !important;
  min-height: 34px !important;
  pointer-events: none !important;
  user-select: none !important;
}.reviewsPage .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar{
  display: inline-block !important;
  font-size: 1.05rem !important;
  line-height: 1 !important;
  background: linear-gradient(165deg, #fde68a 0%, #f59e0b 45%, #d97706 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.35)) !important;
  transition:
    opacity 0.3s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.3s cubic-bezier(0.22, 1, 0.36, 1) !important;
}/* Fine pointer + hover: hide stars until row hover,
focus,
or selection */ @media (hover: hover) and (pointer: fine){
  .reviewsPage .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar {
    opacity: 0 !important;
    transform: translateX(-7px) scale(0.9) !important;
  }

  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:hover .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar,
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:focus-within .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar,
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:has(input:checked) .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar {
    opacity: 1 !important;
    transform: translateX(0) scale(1) !important;
  }

  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:hover .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(1),
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:focus-within .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(1),
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:has(input:checked) .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(1) {
    transition-delay: 0ms !important;
  }
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:hover .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(2),
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:focus-within .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(2),
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:has(input:checked) .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(2) {
    transition-delay: 45ms !important;
  }
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:hover .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(3),
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:focus-within .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(3),
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:has(input:checked) .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(3) {
    transition-delay: 90ms !important;
  }
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:hover .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(4),
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:focus-within .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(4),
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:has(input:checked) .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(4) {
    transition-delay: 135ms !important;
  }
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:hover .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(5),
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:focus-within .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(5),
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:has(input:checked) .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(5) {
    transition-delay: 180ms !important;
  }
}/* Touch / coarse: no hover — show stars only for checked row; others stay hidden */ @media (hover: none),
(pointer: coarse){
  .reviewsPage .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar {
    opacity: 0 !important;
    transform: translateX(-4px) scale(0.95) !important;
  }
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:has(input:checked) .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar {
    opacity: 1 !important;
    transform: translateX(0) scale(1) !important;
    transition:
      opacity 0.28s cubic-bezier(0.22, 1, 0.36, 1),
      transform 0.28s cubic-bezier(0.22, 1, 0.36, 1) !important;
  }
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:has(input:checked) .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(1) {
    transition-delay: 0ms !important;
  }
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:has(input:checked) .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(2) {
    transition-delay: 40ms !important;
  }
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:has(input:checked) .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(3) {
    transition-delay: 80ms !important;
  }
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:has(input:checked) .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(4) {
    transition-delay: 120ms !important;
  }
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:has(input:checked) .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar:nth-child(5) {
    transition-delay: 160ms !important;
  }
}@media (prefers-reduced-motion: reduce){
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio label.option {
    transition-duration: 0.01ms !important;
  }
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio:hover label.option {
    transform: none !important;
  }
  .reviewsPage .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
    transform: none !important;
  }
  @media (hover: hover) and (pointer: fine) {
    .reviewsPage .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar {
      opacity: 0 !important;
    }
    .reviewsPage .reviewComposer__ratingOuter .form-type-radio:hover .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar,
    .reviewsPage .reviewComposer__ratingOuter .form-type-radio:focus-within .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar,
    .reviewsPage .reviewComposer__ratingOuter .form-type-radio:has(input:checked) .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar {
      opacity: 1 !important;
    }
  }
}@media (max-width: 520px){
  .reviewsPage .reviewComposer__ratingOuter #edit-rating,
  .reviewsPage .reviewComposer__ratingRadiosRoot {
    max-width: 100% !important;
    gap: 12px !important;
  }
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio {
    gap: 6px !important;
  }
  .reviewsPage .reviewComposer__ratingOuter .form-type-radio label.option {
    width: 9rem !important;
    min-width: 9rem !important;
    max-width: 9rem !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 12px !important;
    font-size: 0.8rem !important;
  }
  .reviewsPage .reviewComposer__ratingStarsPreview {
    min-height: 32px !important;
  }
  .reviewsPage .reviewComposer__ratingStarsPreview .reviewComposer__ratingStar {
    font-size: 1rem !important;
  }
}

