/* Donation YooMoney — TIME2CS / nevercolor */

.dym-nc-main,
.dym-nc-main *,
#dym_donations,
#dym_donations * {
  box-sizing: border-box;
}

/* Nevercolor уже выводит .left_block перед шаблоном страницы. */
html body #dym-nc-main.dym-nc-main {
  position: relative !important;
  display: block !important;
  flex: 0 0 82% !important;
  align-self: flex-start !important;
  width: 82% !important;
  max-width: 82% !important;
  min-width: 0 !important;
  margin-top: 1.5rem !important;
  margin-right: 0 !important;
  margin-bottom: 0 !important;
  margin-left: 0 !important;
  padding-right: 15px !important;
  padding-left: 15px !important;
  clear: none !important;
  float: none !important;
  visibility: visible !important;
  opacity: 1 !important;
}

#dym_donations {
  --dym-orange: #ff9e18;
  --dym-orange-light: #ffc253;
  --dym-orange-dark: #f36c17;
  --dym-bg: #101010;
  --dym-panel: #191919;
  --dym-panel-light: #222222;
  --dym-border: rgba(255, 158, 24, 0.25);
  --dym-text: #f4f4f4;
  --dym-muted: #a2a2a2;
  display: block !important;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  color: var(--dym-text);
  font-family: inherit;
  font-size: 15px;
  line-height: 1.5;
  visibility: visible !important;
  opacity: 1 !important;
}

#dym_donations .ds-info {
  position: relative;
  width: 100%;
  min-width: 0;
  padding: 18px;
  overflow: hidden;
  border: 1px solid var(--dym-border);
  border-radius: 15px;
  background:
    radial-gradient(circle at 92% 0, rgba(255, 158, 24, 0.11), transparent 33%),
    linear-gradient(145deg, #141414 0%, #0d0d0d 100%);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.36), inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

#dym_donations .ds-info__frame {
  position: absolute;
  top: 16px;
  bottom: 16px;
  left: 0;
  width: 3px;
  border-radius: 0 4px 4px 0;
  background: linear-gradient(180deg, var(--dym-orange-light), var(--dym-orange-dark));
  box-shadow: 0 0 18px rgba(255, 142, 22, 0.55);
}

#dym_donations .ds-info__top {
  display: flex;
  min-width: 0;
  margin-left: 8px;
}

#dym_donations .ds-info__brand {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  width: 100%;
  min-width: 0;
}

#dym_donations .ds-info__brand > div:last-child {
  min-width: 0;
}

#dym_donations .ds-info__badge {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 54px;
  width: 54px;
  height: 54px;
  border: 1px solid rgba(255, 158, 24, 0.48);
  border-radius: 13px;
  color: var(--dym-orange);
  background: rgba(255, 158, 24, 0.08);
  box-shadow: 0 0 20px rgba(255, 142, 22, 0.16);
  font-size: 27px;
  line-height: 1;
}

#dym_donations .ds-info__kicker {
  margin: 1px 0 5px;
  color: var(--dym-orange);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

#dym_donations .ds-info__title-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  min-width: 0;
}

#dym_donations .ds-info__title {
  margin: 0;
  color: #ffffff;
  font-size: clamp(25px, 2.1vw, 32px);
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -0.035em;
  overflow-wrap: anywhere;
}

#dym_donations .ds-info__ver {
  flex: 0 0 auto;
  padding: 4px 11px;
  border-radius: 999px;
  color: #211200;
  background: linear-gradient(135deg, var(--dym-orange-light), #ff8519);
  box-shadow: 0 4px 14px rgba(255, 122, 20, 0.22);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.3;
}

#dym_donations .ds-info__lead {
  margin: 9px 0 0;
  color: var(--dym-muted);
  font-size: 14px;
  line-height: 1.5;
}

#dym_donations .ds-info__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: 12px;
  min-width: 0;
  margin: 16px 0 0 8px;
}

#dym_donations .ds-info__panel {
  min-width: 0;
  margin: 18px 0 0 8px;
  padding: 15px;
  border: 1px solid rgba(255, 158, 24, 0.19);
  border-radius: 12px;
  background: linear-gradient(145deg, rgba(29, 29, 29, 0.99), rgba(19, 19, 19, 0.99));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

#dym_donations .ds-info__grid > .ds-info__panel {
  height: 100%;
  min-height: 420px;
  margin: 0;
}

#dym_donations .ds-info__panel--collect,
#dym_donations .ds-info__panel--goal {
  display: flex;
  flex-direction: column;
}

#dym_donations .ds-info__panel--goal {
  border-color: rgba(243, 108, 23, 0.22);
  background:
    radial-gradient(circle at 100% 100%, rgba(243, 108, 23, 0.07), transparent 42%),
    linear-gradient(145deg, rgba(27, 27, 27, 0.99), rgba(17, 17, 17, 0.99));
}

#dym_donations .ds-info__panel-title {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 10px;
  color: #f8f8f8;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.25;
}

#dym_donations .ds-info__dot {
  flex: 0 0 9px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--dym-orange);
  box-shadow: 0 0 11px rgba(255, 158, 24, 0.78);
}

#dym_donations .ds-info__dot--alt {
  background: var(--dym-orange-dark);
  box-shadow: 0 0 11px rgba(243, 108, 23, 0.75);
}

#dym_donations .ds-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

#dym_donations .ds-stat {
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid rgba(255, 158, 24, 0.18);
  border-radius: 9px;
  background: #222222;
}

#dym_donations .ds-stat small {
  display: block;
  color: #969696;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.07em;
  line-height: 1.2;
  text-transform: uppercase;
}

#dym_donations .ds-stat strong {
  display: block;
  margin-top: 4px;
  overflow: hidden;
  color: #ffffff;
  font-size: 22px;
  font-weight: 900;
  line-height: 1.1;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#dym_donations .dym-ring-wrap {
  --p: 0;
  position: relative;
  flex: 0 0 198px;
  width: 198px;
  height: 198px;
  margin: auto;
}

#dym_donations .dym-ring {
  display: block;
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}

#dym_donations .dym-ring__track {
  fill: none;
  stroke: rgba(255, 158, 24, 0.15);
  stroke-width: 9;
}

#dym_donations .dym-ring__bar {
  fill: none;
  stroke: var(--dym-orange);
  stroke-width: 9;
  stroke-linecap: round;
  stroke-dasharray: 326.73;
  stroke-dashoffset: calc(326.73 * (1 - var(--p) / 100));
  filter: url(#dymGlow);
  transition: stroke-dashoffset 0.6s ease;
}

#dym_donations .dym-ring__label {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  pointer-events: none;
}

#dym_donations .dym-ring__label b {
  color: #ffffff;
  font-size: 38px;
  font-weight: 900;
  line-height: 1;
}

#dym_donations .dym-ring__label span {
  margin-top: 7px;
  color: #979797;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.13em;
  line-height: 1.2;
  text-transform: uppercase;
}

#dym_donations .dym-form {
  margin-top: 6px;
}

#dym_donations .dym-fields {
  display: flex;
  gap: 9px;
  min-width: 0;
  margin-bottom: 11px;
}

#dym_donations .dym-amount,
#dym_donations .dym-comment {
  display: flex;
  align-items: center;
  min-width: 0;
  min-height: 46px;
  margin: 0;
  border: 1px solid rgba(255, 158, 24, 0.18);
  border-radius: 9px;
  color: var(--dym-orange-light);
  background: #222222;
  font-size: 15px;
  font-weight: 800;
}

#dym_donations .dym-amount {
  flex: 0 0 108px;
  gap: 8px;
  padding: 0 13px;
}

#dym_donations .dym-comment {
  flex: 1 1 auto;
  padding: 0 13px;
}

#dym_donations .dym-amount input,
#dym_donations .dym-comment input {
  display: block;
  width: 100%;
  min-width: 0;
  height: auto;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  outline: 0;
  color: #f2f2f2;
  background: transparent;
  box-shadow: none;
  font: inherit;
  font-size: 14px;
}

#dym_donations .dym-amount input::placeholder,
#dym_donations .dym-comment input::placeholder {
  color: #858585;
  opacity: 1;
}

#dym_donations .dym-amount input::-webkit-outer-spin-button,
#dym_donations .dym-amount input::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

#dym_donations .dym-amount input[type="number"] {
  appearance: textfield;
  -moz-appearance: textfield;
}

#dym_donations .ds-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 47px;
  margin: 0;
  padding: 11px 16px;
  border: 1px solid rgba(255, 158, 24, 0.58);
  border-radius: 9px;
  color: #211200 !important;
  background: linear-gradient(135deg, #ffc158 0%, #ff941c 55%, #f36c17 100%);
  box-shadow: 0 8px 22px rgba(243, 108, 23, 0.18);
  font-family: inherit;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.25;
  text-align: center;
  text-decoration: none !important;
  cursor: pointer;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease, transform 0.18s ease;
}

#dym_donations .ds-btn:hover,
#dym_donations .ds-btn:focus {
  border-color: rgba(255, 198, 95, 0.95);
  color: #190e00 !important;
  filter: brightness(1.05);
  box-shadow: 0 10px 27px rgba(243, 108, 23, 0.3);
  transform: translateY(-1px);
}

#dym_donations .ds-btn.disabled,
#dym_donations .ds-btn:disabled {
  opacity: 0.55;
  pointer-events: none;
  transform: none;
}

#dym_donations .dym-result {
  min-height: 0;
  margin-top: 9px;
  color: #cccccc;
  font-size: 13px;
  text-align: center;
}

#dym_donations .dym-result p {
  margin: 8px 0 0;
}

#dym_donations .dym-result .text-danger {
  color: #ff6969 !important;
}

#dym_donations .dym-result .text-success {
  color: #79df91 !important;
}

#dym_donations .ds-info__notice {
  margin-top: auto;
  padding: 14px;
  border: 1px solid rgba(255, 158, 24, 0.18);
  border-radius: 9px;
  color: #cccccc;
  background: #222222;
  font-size: 14px;
}

#dym_donations .ds-info__notice a {
  color: var(--dym-orange-light);
  font-weight: 800;
  text-decoration: none;
}

#dym_donations .dym-goal {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-height: 0;
}

#dym_donations .ds-info__line {
  margin: 8px 0;
  color: #cccccc;
  font-size: 14px;
  line-height: 1.55;
}

#dym_donations .ds-info__line--intro {
  margin-top: 0;
  color: #dedede;
}

#dym_donations .ds-info__line a,
#dym_donations .ds-info__line b {
  color: var(--dym-orange-light);
  text-decoration: none;
}

#dym_donations .ds-info__code {
  max-width: 100%;
  margin: 10px 0 15px;
  padding: 14px 15px;
  overflow-x: auto;
  border: 1px solid rgba(255, 158, 24, 0.17);
  border-radius: 9px;
  color: #eeeeee;
  background: linear-gradient(180deg, #242424, #1e1e1e);
  font-family: inherit;
  font-size: 14px;
  line-height: 1.55;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  word-break: break-word;
}

#dym_donations .dym-goal__media {
  position: relative;
  flex: 0 0 auto;
  width: 100%;
  min-height: 0;
  max-height: none;
  aspect-ratio: 16 / 9;
  margin: 2px 0 10px;
  overflow: hidden;
  border: 1px solid rgba(255, 158, 24, 0.22);
  border-radius: 10px;
  isolation: isolate;
  background: #161616;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03), 0 8px 22px rgba(0, 0, 0, 0.2);
}

#dym_donations .dym-goal__media::before {
  content: "";
  position: absolute;
  z-index: 0;
  inset: -14px;
  background: url("/modules_extra/donation_yoomoney/templates/nevercolor/img/bomzh-donation.png") center / cover no-repeat;
  filter: blur(10px) brightness(0.34);
  transform: scale(1.08);
}

#dym_donations .dym-goal__media::after {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, transparent 62%, rgba(0, 0, 0, 0.2));
}

#dym_donations .dym-goal__media img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

#dym_donations .dym-goal__summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 2px;
}

#dym_donations .dym-goal__stat {
  min-width: 0;
  padding: 13px 14px;
  border: 1px solid rgba(255, 158, 24, 0.15);
  border-radius: 9px;
  background: rgba(34, 34, 34, 0.82);
}

#dym_donations .dym-goal__stat span {
  display: block;
  color: #979797;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1.25;
  text-transform: uppercase;
}

#dym_donations .dym-goal__stat b {
  display: block;
  margin-top: 6px;
  color: var(--dym-orange-light);
  font-size: 19px;
  font-weight: 900;
  line-height: 1.1;
}

#dym_donations .dym-goal__progress {
  margin-top: 16px;
  padding: 14px;
  border: 1px solid rgba(255, 158, 24, 0.12);
  border-radius: 9px;
  background: rgba(26, 26, 26, 0.72);
}

#dym_donations .dym-goal__progress-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
  color: #b9b9b9;
  font-size: 13px;
  font-weight: 700;
}

#dym_donations .dym-goal__progress-top b {
  color: var(--dym-orange-light);
  font-size: 15px;
  font-weight: 900;
}

#dym_donations .dym-goal__progress-line {
  height: 8px;
  overflow: hidden;
  border-radius: 99px;
  background: #292929;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.45);
}

#dym_donations .dym-goal__progress-line span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--dym-orange-dark), var(--dym-orange-light));
  box-shadow: 0 0 12px rgba(255, 158, 24, 0.45);
}

#dym_donations .dym-goal__footer {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: auto;
  padding-top: 8px;
}

#dym_donations .dym-goal__footer-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(255, 158, 24, 0.28);
  border-radius: 10px;
  color: var(--dym-orange);
  background: rgba(255, 158, 24, 0.07);
  font-size: 16px;
}

#dym_donations .dym-goal__footer p {
  margin: 0;
  color: #aaaaaa;
  font-size: 12px;
  line-height: 1.35;
}

#dym_donations .dym-goal__date {
  margin-top: 12px;
  padding: 10px 12px;
  border-radius: 8px;
  color: #bdbdbd;
  background: rgba(255, 158, 24, 0.06);
  font-size: 13px;
  text-align: center;
}

#dym_donations .dym-goal__date b {
  color: var(--dym-orange-light);
}

#dym_donations .ds-info__panel--patrons {
  padding-top: 12px;
  padding-bottom: 8px;
}

#dym_donations .dym-patrons__list {
  max-height: 260px;
  overflow: auto;
  scrollbar-color: var(--dym-orange) #222222;
  scrollbar-width: thin;
}

#dym_donations .dym-patron {
  display: flex;
  align-items: center;
  gap: 13px;
  min-width: 0;
  padding: 7px 5px;
  border-bottom: 1px solid rgba(255, 158, 24, 0.11);
  color: inherit;
  text-decoration: none;
}

#dym_donations .dym-patron:last-child {
  border-bottom: 0;
}

#dym_donations .dym-patron:hover {
  color: #ffffff;
  text-decoration: none;
  background: rgba(255, 158, 24, 0.025);
}

#dym_donations .dym-patron img {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(255, 158, 24, 0.3);
  border-radius: 50%;
  object-fit: cover;
}

#dym_donations .dym-patron__meta {
  flex: 1 1 auto;
  min-width: 0;
}

#dym_donations .dym-patron__name,
#dym_donations .dym-patron__comment {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#dym_donations .dym-patron__name {
  font-size: 15px;
  font-weight: 900;
}

#dym_donations .dym-patron__comment {
  margin-top: 3px;
  color: #999999;
  font-size: 13px;
}

#dym_donations .dym-patron__comment:empty {
  display: none;
}

#dym_donations .dym-patron__sum {
  flex: 0 0 auto;
  color: var(--dym-orange-light);
  font-size: 15px;
  font-weight: 900;
  white-space: nowrap;
}

.ds-info__title-accent {
	background: linear-gradient(180deg, #ffd34e 0%, #ff8a00 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: #ffb000;
}

#dym_donations .is-done .dym-form {
  opacity: 0.45;
  pointer-events: none;
}

@media (max-width: 1199px) {
  #dym_donations .ds-info {
    padding: 20px;
  }

  #dym_donations .ds-info__grid {
    grid-template-columns: 1fr;
  }

  #dym_donations .ds-info__grid > .ds-info__panel {
    min-height: 0;
  }

  #dym_donations .dym-goal__footer {
    margin-top: 18px;
  }
}

@media (max-width: 991px) {
  #dym_donations .ds-info__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  #dym_donations .ds-info__grid > .ds-info__panel {
    min-height: 420px;
  }
}

@media (max-width: 991.99px) {
  html body #dym-nc-main.dym-nc-main {
    flex-basis: 100% !important;
    order: -1 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}

@media (max-width: 800px) {
  #dym_donations .ds-info__grid {
    grid-template-columns: 1fr;
  }

  #dym_donations .ds-info__grid > .ds-info__panel {
    min-height: 0;
  }
}

@media (max-width: 767px) {
  .dym-nc-main {
    padding-right: 8px !important;
    padding-left: 8px !important;
  }

  #dym_donations .ds-info {
    padding: 17px 15px;
    border-radius: 12px;
  }

  #dym_donations .ds-info__top,
  #dym_donations .ds-info__grid,
  #dym_donations .ds-info__panel {
    margin-left: 5px;
  }

  #dym_donations .ds-info__grid {
    gap: 11px;
    margin-top: 18px;
  }

  #dym_donations .ds-info__brand {
    gap: 12px;
  }

  #dym_donations .ds-info__badge {
    flex-basis: 45px;
    width: 45px;
    height: 45px;
    border-radius: 10px;
    font-size: 22px;
  }

  #dym_donations .ds-info__title {
    font-size: 22px;
  }

  #dym_donations .ds-info__lead {
    font-size: 13px;
  }

  #dym_donations .ds-info__panel {
    padding: 15px;
  }

  #dym_donations .dym-goal__media {
    aspect-ratio: 16 / 9;
  }
}

@media (max-width: 479px) {
  #dym_donations .ds-info__brand {
    display: grid;
    grid-template-columns: 45px minmax(0, 1fr);
  }

  #dym_donations .ds-info__title-row {
    align-items: flex-start;
    flex-direction: column;
    gap: 7px;
  }

  #dym_donations .ds-info__title {
    font-size: 20px;
  }

  #dym_donations .ds-stats,
  #dym_donations .dym-goal__summary {
    grid-template-columns: 1fr;
  }

  #dym_donations .dym-fields {
    flex-direction: column;
  }

  #dym_donations .dym-amount {
    flex-basis: auto;
    width: 100%;
  }

  #dym_donations .dym-ring-wrap {
    width: 148px;
    height: 148px;
  }
}

@media (prefers-reduced-motion: reduce) {
  #dym_donations .dym-ring__bar,
  #dym_donations .ds-btn {
    transition: none;
  }
}
