.fcl-wrap {
  --fcl-bg: #111110;
  --fcl-card: #ffffff;
  --fcl-text: #191919;
  --fcl-muted: rgba(255,255,255,.78);
  --fcl-border: rgba(240, 190, 132, .95);
  max-width: 980px;
  margin: 0 auto;
  padding: 18px;
  color: #fff;
  font-family: inherit;
  background: var(--fcl-bg);
  border: 3px solid var(--fcl-border);
  border-radius: 28px;
}

.fcl-card {
  background: var(--fcl-card);
  color: var(--fcl-text);
  border-radius: 32px;
  box-shadow: 0 18px 40px rgba(0,0,0,.22);
}

.fcl-header {
  background: transparent;
  box-shadow: none;
  color: #fff;
  text-align: center;
  padding: 22px 20px 8px;
}

.fcl-title {
  margin: 0;
  font-size: clamp(34px, 4vw, 62px);
  line-height: 1.05;
  font-weight: 500;
  letter-spacing: -0.03em;
}

.fcl-subtitle {
  margin: 18px 0 0;
  font-size: clamp(16px, 2vw, 28px);
  line-height: 1.35;
  color: var(--fcl-muted);
}

.fcl-field-card,
.fcl-months-card,
.fcl-result-card {
  padding: 26px;
  margin: 18px auto;
}

.fcl-field-card {
  max-width: 520px;
  text-align: center;
}

.fcl-label {
  display: block;
  margin-bottom: 16px;
  text-align: center;
  font-size: 20px;
  color: var(--fcl-muted);
  font-weight: 500;
}

.fcl-amount {
  width: min(100%, 380px);
  height: 66px;
  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.08);
  text-align: center;
  font-size: 24px;
  font-weight: 600;
  color: #222;
  background: #fff;
  outline: none;
  box-shadow: inset 0 2px 8px rgba(0,0,0,.05);
}

.fcl-months-card {
  max-width: 860px;
  text-align: center;
}

.fcl-months {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(90px, 1fr));
  gap: 10px;
  max-width: 640px;
  margin: 0 auto;
  padding: 10px;
  background: #fff;
  border-radius: 999px;
}

.fcl-month {
  border: 0;
  min-height: 66px;
  border-radius: 999px;
  background: transparent;
  color: #202020;
  font-size: 24px;
  font-weight: 600;
  cursor: pointer;
  transition: transform .15s ease, background-color .15s ease, color .15s ease, box-shadow .15s ease;
}

.fcl-month.is-active {
  background: #151515;
  color: #fff;
  box-shadow: 0 10px 24px rgba(0,0,0,.18);
}

.fcl-result-card {
  max-width: 980px;
  text-align: center;
  padding-top: 36px;
}

.fcl-monthly {
  font-size: clamp(28px, 3vw, 54px);
  line-height: 1.2;
  font-weight: 700;
  margin-bottom: 26px;
}

.fcl-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.fcl-stat {
  padding: 10px 8px;
}

.fcl-stat-label {
  display: block;
  font-size: 18px;
  line-height: 1.3;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 12px;
}

.fcl-stat-value {
  display: block;
  font-size: 26px;
  font-weight: 700;
}

.fcl-note {
  color: #fff;
  margin: 22px 8px 4px;
  font-size: 18px;
  line-height: 1.6;
}

@media (max-width: 768px) {
  .fcl-wrap {
    border-radius: 22px;
    padding: 12px;
  }

  .fcl-field-card,
  .fcl-months-card,
  .fcl-result-card {
    padding: 18px;
  }

  .fcl-stats {
    grid-template-columns: 1fr;
  }

  .fcl-label,
  .fcl-stat-label,
  .fcl-note {
    font-size: 16px;
  }

  .fcl-month,
  .fcl-amount {
    min-height: 58px;
    font-size: 20px;
  }
}
