.calculator-wrap {
  /* --- Form Section --- */
  /* Remove arrows from number input */
  /* --- Result Section --- */
  /* --- Chart --- */
}
.calculator-wrap .section_title {
  font-weight: 700;
  text-align: left;
}
.calculator-wrap .calculator-grid {
  display: flex;
  gap: 64px;
}
.calculator-wrap .form-section {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.calculator-wrap .input-group label {
  display: block;
  color: #000;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  margin-bottom: 8px;
}
.calculator-wrap .input-field,
.calculator-wrap .input-composite-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: auto;
  padding: 12px 16px;
  border-radius: 6px;
  border: 1px solid #EAEAEA;
  background-color: #ffffff;
  transition: outline-color, outline-width, border-color 0.2s, outline-color 0.2s;
  cursor: text;
  color: #000;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
}
.calculator-wrap .input-field:hover,
.calculator-wrap .input-composite-wrapper:hover {
  border: 1px solid var(--Surface-Black-Mid, rgba(0, 0, 0, 0.3));
}
.calculator-wrap .input-field:focus-within,
.calculator-wrap .input-composite-wrapper:focus-within {
  border: 1px solid rgba(0, 0, 0, 0.3);
  outline: 3px solid #3339F1 !important;
  border-radius: 10px;
  outline-offset: 3px;
}
.calculator-wrap .input-main {
  border: none;
  outline: none;
  background: none;
  font-family: inherit;
  font-size: 1rem;
  color: #000000;
  padding: 0;
  text-align: left;
  transition: width 0.2s ease; /* Animate width changes */
  width: 1ch; /* Start with a base width of 1 character */
}
.calculator-wrap #monthly-users {
  width: 100%;
}
.calculator-wrap input[type=number] {
  -moz-appearance: textfield;
}
.calculator-wrap input[type=number]::-webkit-inner-spin-button, .calculator-wrap input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.calculator-wrap .input-group-main {
  display: flex;
  align-items: center;
}
.calculator-wrap .input-prefix {
  padding-right: 0.25rem;
}
.calculator-wrap .input-symbol {
  font-size: 1rem;
  color: #000;
  text-align: center;
  margin-right: auto; /* Pushes derived value to the right */
  padding-left: 0.25rem;
}
.calculator-wrap .derived-value-inline,
.calculator-wrap .per-year-text {
  color: rgba(0, 0, 0, 0.6);
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}
.calculator-wrap .result-section {
  flex: 0 1 758px;
}
.calculator-wrap .result-section h2.section-sub-title {
  color: #000;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  margin-bottom: 16px;
}
.calculator-wrap .result-section .result-section-bordered {
  background-color: #ffffff;
  padding: 32px;
  border-radius: var(--Space-space-500, 16px);
  border: 1px solid #EAEAEA;
  box-sizing: border-box;
}
.calculator-wrap .result-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
}
.calculator-wrap .result-header .line {
  width: 1px;
  background: #EAEAEA;
  height: 86px;
  display: block;
}
.calculator-wrap #arr-result {
  font-size: 72px;
  font-weight: 700;
  background: linear-gradient(114deg, #000 0%, rgba(0, 0, 0, 0.5) 50.68%, #000 101.35%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  transition: font-size 0.3s ease-out;
  padding-bottom: 6px;
  display: flex;
}
.calculator-wrap .calculation-text {
  font-size: 16px;
  color: #000;
  text-align: left;
  gap: 10px;
  display: flex;
  flex-direction: column;
}
.calculator-wrap .calculation-text span {
  display: block;
  font-weight: 500;
  font-size: 20px;
  color: rgba(0, 0, 0, 0.5);
}
.calculator-wrap .result-divider {
  border: none;
  height: 1px;
  background-color: #EAEAEA;
  margin: 20px 0 40px 0;
}
.calculator-wrap #chart-container {
  width: 100%;
  height: 243px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 15px;
  border-bottom: 1px solid #EAEAEA;
  padding: 5px 20px 4px 20px;
  box-sizing: border-box;
}
.calculator-wrap .bar-container {
  flex-grow: 1;
  position: relative;
  height: 100%;
  width: 100%;
}
.calculator-wrap .bar-shadow {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #f0fdf4;
  border-radius: 8px 8px 0 0;
}
.calculator-wrap .chart-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: linear-gradient(to bottom, #3EDE64, #37C559, #30AB4D) !important;
  border-radius: 8px 8px 0 0;
  transition: height 0.5s ease-out, background-color 0.5s ease-out;
}

.input-sizer {
  position: absolute;
  visibility: hidden;
  height: auto;
  width: auto;
  white-space: nowrap;
  font-size: 1rem;
  padding: 0;
  left: 0;
  top: 0;
  z-index: -99999;
}
