/* Reduce Term Calculator - Email Stylesheet */

/* Base styles */
.reduce-term {
  max-width: 640px;
  margin: 0 auto;
  font-family: 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  color: #2d3748;
  line-height: 1.5;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  overflow: hidden;
  background-color: #ffffff;
}

.reduce-term * {
  box-sizing: border-box;
}

/* Main header */
.reduce-term > .card-header {
  background-color: #553c9a;
  border-bottom: none;
  padding: 16px 20px;
  text-align: center;
}

.reduce-term > .card-header h3,
.reduce-term > .card-header .fw-bold {
  color: #ffffff;
  font-size: 20px;
  font-weight: 700;
  margin: 0;
  letter-spacing: 0.5px;
}

.reduce-term > .card-body {
  padding: 20px;
}

/* Section cards */
.reduce-term .card {
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  overflow: hidden;
  background-color: #ffffff;
}

.reduce-term .card .card-header {
  background-color: #edf2f7;
  border-bottom: 2px solid #e2e8f0;
  padding: 10px 16px;
  text-align: center;
}

.reduce-term .card .card-header h5 {
  font-size: 14px;
  font-weight: 700;
  color: #2d3748;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.reduce-term .card .card-body {
  padding: 16px;
}

/* Housing Calculator rows */
.reduce-term .housing-calculator {
  border: none;
  border-radius: 0;
  overflow: hidden;
  box-shadow: none;
  background-color: #ffffff;
}

.reduce-term .housing-calculator .calculator-header {
  display: none;
}

.reduce-term .housing-calculator .calculator-body {
  width: 100%;
}

.reduce-term .calculator-row {
  display: flex;
  border-bottom: 1px solid #f0f4f8;
}

.reduce-term .calculator-row:last-child {
  border-bottom: none;
}

.reduce-term .calculator-row .row-label {
  width: 45%;
  background-color: #f7fafc;
  border-right: 1px solid #e2e8f0;
  padding: 8px 12px;
  font-weight: 600;
  font-size: 12px;
  color: #4a5568;
  display: flex;
  align-items: center;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

.reduce-term .calculator-row .row-value {
  width: 55%;
  padding: 8px 12px;
  display: flex;
  align-items: center;
}

.reduce-term .readonly-value,
.reduce-term .email-value {
  font-size: 13px;
  font-weight: 500;
  color: #2d3748;
  padding: 4px 0;
  width: 100%;
  background-color: transparent;
  border: none;
  border-radius: 0;
  min-height: auto;
}

.reduce-term .total-row {
  background-color: #edf2f7;
  border-top: 2px solid #e2e8f0;
}

.reduce-term .total-row .row-label {
  background-color: #e2e8f0;
  font-weight: 700;
  font-size: 12px;
  color: #1a365d;
}

.reduce-term .total-row .readonly-value {
  font-weight: 700;
  color: #1a365d;
  font-size: 14px;
}

/* Tables */
.reduce-term .table-responsive {
  width: 100%;
}

.reduce-term table.table {
  width: 100%;
  border-collapse: collapse;
  margin: 0;
}

.reduce-term table.table thead th {
  background-color: #1a365d;
  padding: 10px 16px;
  font-weight: 600;
  font-size: 12px;
  color: #ffffff;
  text-transform: uppercase;
  letter-spacing: 0.3px;
  text-align: left;
  border-bottom: 2px solid #e2e8f0;
}

.reduce-term table.table thead th strong {
  color: #ffffff;
  font-weight: 600;
}

.reduce-term table.table tbody td {
  padding: 10px 16px;
  font-size: 13px;
  color: #2d3748;
  border-bottom: 1px solid #f0f4f8;
  text-align: left;
}

.reduce-term table.table tbody td strong {
  color: #1a365d;
}

.reduce-term table.table tr:last-child td {
  border-bottom: none;
}

/* Savings text */
.reduce-term .text-success {
  color: #276749;
}

/* Alert boxes */
.reduce-term .alert {
  padding: 16px 20px;
  border-radius: 6px;
  font-size: 14px;
  line-height: 1.6;
}

.reduce-term .alert-info {
  background-color: #ebf8ff;
  border: 1px solid #bee3f8;
  color: #2b6cb0;
}

.reduce-term .alert-warning {
  background-color: #fffaf0;
  border: 1px solid #fefcbf;
  color: #975a16;
}

.reduce-term .alert h5 {
  font-size: 15px;
  font-weight: 700;
  margin: 0 0 4px 0;
}

.reduce-term .alert p {
  margin: 4px 0 0 0;
}

/* Text styling */
.reduce-term .fw-bold {
  font-weight: 700;
}

.reduce-term .text-muted {
  color: #a0aec0;
}

.reduce-term .text-center {
  text-align: center;
}

.reduce-term .d-block {
  display: block;
}

/* Spacing */
.reduce-term .mb-3 {
  margin-bottom: 16px;
}

.reduce-term .mt-3 {
  margin-top: 16px;
}

.reduce-term .mb-0 {
  margin-bottom: 0;
}

.reduce-term .p-3 {
  padding: 16px;
}

.reduce-term .p-0 {
  padding: 0;
}

.reduce-term .py-2 {
  padding-top: 8px;
  padding-bottom: 8px;
}

.reduce-term .py-3 {
  padding-top: 16px;
  padding-bottom: 16px;
}

.reduce-term .ps-3 {
  padding-left: 16px;
}

.reduce-term .px-3 {
  padding-left: 16px;
  padding-right: 16px;
}

.reduce-term .me-2 {
  margin-right: 8px;
}

.reduce-term .shadow-sm {
  box-shadow: none;
}

.reduce-term .bg-light {
  background-color: #f7fafc;
}

.reduce-term .border-bottom {
  border-bottom: 1px solid #e2e8f0;
}

.reduce-term .border {
  border: 1px solid #e2e8f0;
}

/* Hide Font Awesome icons in email (they won't render) */
.reduce-term .fas,
.reduce-term .fa-solid,
.reduce-term [class^="fa-"] {
  display: none;
}
