/* =========================================================
   ADMIN V2
   PRICING
   ========================================================= */

.admin-pricing-intro {
  margin-bottom: 18px;
  padding: 18px 20px;

  border:
    1px solid #ead7df;

  border-radius:
    var(--admin-radius);

  background:
    #fff8fb;
}

.admin-pricing-intro strong {
  display: block;
  margin-bottom: 5px;

  color:
    var(--admin-accent-dark);
}

.admin-pricing-intro p {
  margin: 0;

  color:
    var(--admin-text-soft);
}


.admin-pricing-readonly {
  margin: 0 0 18px;
  padding: 12px 14px;

  border-radius: 10px;

  background:
    var(--admin-warning-bg);

  color:
    var(--admin-warning);

  font-size: 12px;
}


.admin-pricing-panel {
  overflow: hidden;

  margin-bottom: 18px;

  border:
    1px solid
    var(--admin-border);

  border-radius:
    var(--admin-radius);

  background:
    var(--admin-surface);

  box-shadow:
    var(--admin-shadow);
}


.admin-pricing-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 18px;

  padding: 20px 22px;

  border-bottom:
    1px solid
    var(--admin-border);

  background:
    var(--admin-surface-soft);
}

.admin-pricing-heading h2 {
  margin: 0;

  font-size: 18px;
}

.admin-pricing-heading p {
  max-width: 780px;

  margin: 5px 0 0;

  color:
    var(--admin-text-soft);

  font-size: 12px;
}


.admin-pricing-body {
  padding: 20px 22px;
}


.admin-pricing-form {
  display: grid;

  gap: 14px;
}


.admin-pricing-grid {
  display: grid;

  grid-template-columns:
    repeat(4, minmax(0, 1fr));

  gap: 14px;
}

.admin-pricing-grid--two {
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
}


.admin-pricing-field {
  display: grid;

  gap: 6px;

  min-width: 0;

  color:
    var(--admin-text);

  font-size: 11px;
  font-weight: 700;
}

.admin-pricing-field input {
  width: 100%;

  box-sizing: border-box;

  padding: 10px 11px;

  border:
    1px solid
    var(--admin-border);

  border-radius: 9px;

  background:
    #ffffff;

  color:
    var(--admin-text);

  font: inherit;
  font-weight: 500;
}

.admin-pricing-field input:focus {
  outline: 2px solid
    rgba(215, 40, 111, 0.15);

  border-color:
    var(--admin-accent);
}

.admin-pricing-field input:disabled {
  background:
    #f5f2f4;

  color:
    var(--admin-text-faint);
}


.admin-pricing-toggle {
  display: flex;
  align-items: center;

  gap: 9px;

  color:
    var(--admin-text);

  font-size: 12px;
  font-weight: 700;
}

.admin-pricing-toggle input {
  width: 18px;
  height: 18px;

  accent-color:
    var(--admin-accent);
}


.admin-pricing-note {
  margin: 0;

  color:
    var(--admin-text-soft);

  font-size: 11px;
  line-height: 1.55;
}


.admin-pricing-feedback {
  min-height: 17px;

  margin: 0;

  color:
    var(--admin-text-soft);

  font-size: 11px;
}


.admin-pricing-card-grid {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: 14px;
}


.admin-pricing-product {
  min-width: 0;

  padding: 17px;

  border:
    1px solid
    var(--admin-border);

  border-radius: 12px;

  background:
    var(--admin-surface-soft);
}

.admin-pricing-product h3 {
  margin:
    0 0 6px;

  font-size: 14px;
}

.admin-pricing-product > p {
  min-height: 34px;

  margin:
    0 0 12px;

  color:
    var(--admin-text-soft);

  font-size: 11px;
  line-height: 1.45;
}


.admin-pricing-current {
  min-height: auto !important;

  padding: 8px 10px;

  border-radius: 8px;

  background:
    #ffffff;

  color:
    var(--admin-text) !important;

  font-weight: 800;
}


.admin-pricing-product
.admin-pricing-form {
  padding-top: 12px;

  border-top:
    1px solid
    var(--admin-border);
}


.admin-pricing-loading {
  margin: 0;

  color:
    var(--admin-text-soft);
}


@media (max-width: 1180px) {
  .admin-pricing-card-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .admin-pricing-grid {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }
}


@media (max-width: 720px) {
  .admin-pricing-card-grid,
  .admin-pricing-grid,
  .admin-pricing-grid--two {
    grid-template-columns:
      1fr;
  }

  .admin-pricing-heading {
    align-items:
      flex-start;

    flex-direction:
      column;
  }

  .admin-pricing-body {
    padding: 16px;
  }
}