/* Build 755: reviewed community place requests and First Finder credit. */

html body .our-map-contribution-dialog {
  width: min(486px, calc(100vw - 24px)) !important;
  max-width: 486px !important;
  margin: auto !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 25px !important;
  color: #123f46 !important;
  background: transparent !important;
}

html body .our-map-contribution-dialog::backdrop {
  background: rgba(2, 24, 34, 0.64) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}

html body .our-map-contribution-panel,
html body .our-map-place-request-panel {
  box-sizing: border-box !important;
  display: grid !important;
  max-height: calc(100dvh - 24px) !important;
  gap: 13px !important;
  padding: 20px !important;
  overflow: auto !important;
  border: 1px solid rgba(175, 224, 211, 0.76) !important;
  border-radius: 25px !important;
  background: radial-gradient(circle at 8% 0%, rgba(98, 226, 190, 0.2), transparent 33%), #fbfffd !important;
  box-shadow: 0 28px 70px rgba(0, 27, 39, 0.36), inset 0 1px 0 #ffffff !important;
}

html body .our-map-contribution-panel[hidden],
html body .our-map-place-request-panel[hidden] {
  display: none !important;
}

html body :is(.our-map-contribution-panel, .our-map-place-request-panel) > header {
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) 44px !important;
  align-items: center !important;
  gap: 10px !important;
}

html body .our-map-contribution-symbol {
  display: grid !important;
  width: 42px !important;
  height: 42px !important;
  place-items: center !important;
  border-radius: 15px !important;
  color: #ffffff !important;
  background: linear-gradient(145deg, #087d72, #18aa93) !important;
  box-shadow: 0 8px 18px rgba(5, 94, 87, 0.22) !important;
  font-size: 1.1rem !important;
  font-weight: 950 !important;
}

html body .our-map-contribution-symbol.is-request {
  background: #00243f !important;
  box-shadow: 0 8px 18px rgba(0, 36, 63, 0.16) !important;
}

html body :is(.our-map-contribution-panel, .our-map-place-request-panel) header small {
  display: block !important;
  color: #0a8678 !important;
  font-size: 0.55rem !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}

html body :is(.our-map-contribution-panel, .our-map-place-request-panel) h2 {
  margin: 2px 0 0 !important;
  color: #0c3942 !important;
  font-size: 1.16rem !important;
  line-height: 1.15 !important;
}

html body :is(#ourMapContributionClose, #ourMapPlaceRequestClose) {
  display: grid !important;
  width: 44px !important;
  height: 44px !important;
  place-items: center !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #42686a !important;
  background: #eaf6f1 !important;
  cursor: pointer !important;
}

html body .our-map-contribution-panel > p,
html body .our-map-place-request-intro {
  margin: 0 !important;
  color: #60787a !important;
  font-size: 0.71rem !important;
  line-height: 1.45 !important;
}

html body .our-map-contribution-paths {
  display: grid !important;
  gap: 9px !important;
}

html body .our-map-contribution-paths > button {
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) 22px !important;
  min-height: 72px !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 10px 12px !important;
  border: 1px solid rgba(15, 128, 112, 0.14) !important;
  border-radius: 16px !important;
  color: #184a4f !important;
  background: #eff9f5 !important;
  text-align: left !important;
  cursor: pointer !important;
}

html body .our-map-contribution-paths > button:first-child {
  background: linear-gradient(135deg, #e7f8f3, #f7fcfa) !important;
}

html body .our-map-contribution-paths > button > span:first-child {
  display: grid !important;
  width: 40px !important;
  height: 40px !important;
  place-items: center !important;
  border-radius: 13px !important;
  color: #08776d !important;
  background: #ffffff !important;
  box-shadow: 0 5px 12px rgba(5, 94, 87, 0.1) !important;
  font-size: 1rem !important;
  font-weight: 900 !important;
}

html body .our-map-contribution-paths > button > span:nth-child(2) {
  display: grid !important;
  min-width: 0 !important;
  gap: 3px !important;
}

html body .our-map-contribution-paths strong {
  color: #12464b !important;
  font-size: 0.75rem !important;
  font-weight: 900 !important;
}

html body .our-map-contribution-paths small {
  color: #657d7e !important;
  font-size: 0.6rem !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
}

html body .our-map-contribution-trust,
html body .our-map-place-request-badge {
  display: flex !important;
  gap: 8px !important;
  align-items: center !important;
  padding: 10px 11px !important;
  border: 1px solid rgba(23, 128, 111, 0.12) !important;
  border-radius: 14px !important;
  background: rgba(233, 248, 243, 0.78) !important;
}

html body .our-map-place-request-place {
  display: grid !important;
  grid-template-columns: 40px minmax(0, 1fr) !important;
  gap: 10px !important;
  align-items: center !important;
  padding: 10px 11px !important;
  border: 1px solid rgba(15, 128, 112, 0.13) !important;
  border-radius: 15px !important;
  background: #edf8f4 !important;
}

html body .our-map-place-request-place > span:first-child {
  display: grid !important;
  width: 38px !important;
  height: 38px !important;
  place-items: center !important;
  border-radius: 13px !important;
  background: #ffffff !important;
  box-shadow: 0 4px 10px rgba(14, 87, 83, 0.1) !important;
}

html body .our-map-place-request-place :is(small, strong),
html body .our-map-place-request-badge :is(small, strong) {
  display: block !important;
}

html body .our-map-place-request-place small,
html body .our-map-place-request-badge small {
  color: #66807f !important;
  font-size: 0.55rem !important;
  line-height: 1.35 !important;
}

html body .our-map-place-request-place strong,
html body .our-map-place-request-badge strong {
  overflow: hidden !important;
  color: #144d51 !important;
  font-size: 0.72rem !important;
  font-weight: 900 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

html body .our-map-place-request-panel > label:not(.our-map-place-request-consent) {
  display: grid !important;
  gap: 5px !important;
  color: #204f54 !important;
  font-size: 0.65rem !important;
  font-weight: 850 !important;
}

html body .our-map-place-request-panel > label > small {
  color: #738688 !important;
  font-size: 0.54rem !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
}

html body .our-map-place-request-panel > label[hidden] { display: none !important; }

html body .our-map-place-request-panel :is(input[type="text"], select, textarea) {
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 46px !important;
  padding: 11px 12px !important;
  border: 1px solid rgba(26, 105, 101, 0.18) !important;
  border-radius: 13px !important;
  outline: none !important;
  color: #143f45 !important;
  background: #ffffff !important;
  font: inherit !important;
  font-size: 16px !important;
  font-weight: 650 !important;
}

html body .our-map-place-request-panel textarea {
  resize: vertical !important;
  line-height: 1.45 !important;
}

html body .our-map-place-request-panel :is(input, select, textarea):focus {
  border-color: #0d8e80 !important;
  box-shadow: 0 0 0 3px rgba(15, 151, 134, 0.13) !important;
}

html body .our-map-place-request-consent {
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) !important;
  gap: 9px !important;
  align-items: flex-start !important;
  padding: 11px !important;
  border: 1px solid rgba(26, 105, 101, 0.18) !important;
  border-radius: 14px !important;
  color: #526c79 !important;
  background: #eef9f5 !important;
  cursor: pointer !important;
}

html body .our-map-place-request-consent input {
  width: 20px !important;
  height: 20px !important;
  margin: 1px 0 0 !important;
  accent-color: #0d897c !important;
}

html body .our-map-place-request-consent :is(strong, small) {
  display: block !important;
}

html body .our-map-place-request-consent strong {
  color: #00243f !important;
  font-size: 0.64rem !important;
  font-weight: 900 !important;
}

html body .our-map-place-request-consent small {
  margin-top: 2px !important;
  font-size: 0.56rem !important;
  line-height: 1.35 !important;
}

html body .our-map-place-request-status {
  min-height: 0 !important;
  margin: 0 !important;
  color: #526f72 !important;
  font-size: 0.62rem !important;
  font-weight: 750 !important;
  line-height: 1.35 !important;
}

html body .our-map-place-request-status:empty { display: none !important; }
html body .our-map-place-request-status.is-error { color: #a13c3c !important; }
html body .our-map-place-request-status.is-success { color: #08766a !important; }

html body .our-map-place-request-panel > footer {
  display: grid !important;
  grid-template-columns: 0.7fr 1.3fr !important;
  gap: 9px !important;
}

html body .our-map-place-request-panel > footer button {
  min-height: 48px !important;
  border-radius: 15px !important;
  font-size: 0.7rem !important;
  font-weight: 900 !important;
  cursor: pointer !important;
}

html body .our-map-place-request-cancel {
  border: 1px solid rgba(31, 102, 99, 0.14) !important;
  color: #527173 !important;
  background: #edf6f3 !important;
}

html body .our-map-place-request-submit {
  border: 0 !important;
  color: #ffffff !important;
  background: linear-gradient(145deg, #087d72, #18aa93) !important;
  box-shadow: 0 9px 20px rgba(5, 94, 87, 0.2) !important;
}

html body .our-map-place-request-submit:disabled { opacity: 0.58 !important; cursor: wait !important; }

html body .our-map-request-search-action {
  width: 100% !important;
  min-height: 42px !important;
  margin-top: 6px !important;
  border: 1px solid rgba(13, 133, 119, 0.2) !important;
  border-radius: 12px !important;
  color: #08776d !important;
  background: #e7f8f3 !important;
  font-size: 0.62rem !important;
  font-weight: 900 !important;
  cursor: pointer !important;
}

@media (max-width: 720px) {
  html body :is(.our-map-contribution-panel, .our-map-place-request-panel) { padding: 17px !important; }
}

@media (max-width: 370px) {
  html body .our-map-place-request-panel > footer { grid-template-columns: 1fr !important; }
}

@media (prefers-reduced-motion: reduce) {
  html body .our-map-contribution-dialog::backdrop {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
}
