/* msRussianPost — виджет доставки: BEM (msrp__*), rem, mobile-first, CSS-переменные */

/* Пока JS не выставил data-msrp-visible="1", блок скрыт (в т.ч. до DOMContentLoaded) */
.msrp__wrapper:not([data-msrp-visible='1']),
[data-msrp-widget]:not([data-msrp-visible='1']) {
  display: none;
}

:root {
  --msrp-method-background: #fff;
  --msrp-method-border-color: #e5e7eb;
  --msrp-method-selected-border-color: #2563eb;
  --msrp-error-color: #b91c1c;
  --msrp-loading-color: #64748b;
  --msrp-gap: 1rem;
  --msrp-radius: 0.5rem;
}

.msrp__status {
  margin: 0 0 0.75rem;
  font-size: 0.9375rem;
  color: var(--msrp-loading-color);
}

.msrp__methods {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin: 0 0 1rem;
}

.msrp__method {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 1rem;
  padding: 0.75rem 1rem;
  background: var(--msrp-method-background);
  border: 0.0625rem solid var(--msrp-method-border-color);
  border-radius: var(--msrp-radius);
  cursor: pointer;
  transition: border-color 0.2s ease, background-color 0.2s ease;
}

.msrp__method:hover {
  border-color: var(--msrp-method-selected-border-color);
}

.msrp__method:has(.msrp__method-input:checked) {
  border-color: var(--msrp-method-selected-border-color);
  background: rgba(37, 99, 235, 0.04);
}

.msrp__method-input {
  margin: 0;
  flex-shrink: 0;
}

.msrp__method-name {
  font-weight: 500;
  font-size: 1rem;
}

.msrp__method-cost {
  font-weight: 600;
  font-size: 0.9375rem;
}

.msrp__method-period {
  font-size: 0.875rem;
  color: var(--msrp-loading-color);
}

.msrp__error-message {
  margin: 0;
  padding: 0.75rem 1rem;
  font-size: 0.9375rem;
  color: var(--msrp-error-color);
  background: rgba(185, 28, 28, 0.08);
  border-radius: var(--msrp-radius);
}

@media (min-width: 48rem) {
  .msrp__methods {
    gap: 0.75rem;
  }

  .msrp__method {
    padding: 1rem 1.25rem;
  }
}
