/* AutoArty EV TCO Calculator styles */
.tco-wrap { max-width: 780px; margin: 0 auto; font-family: inherit; color: #1e293b; }
.tco-header { margin-bottom: 1.5rem; }
.tco-header h2 { font-size: 1.65rem; margin: 0 0 .4rem; }
.tco-subtitle { color: #64748b; margin: 0; font-size: .95rem; }

/* Form layout */
.tco-form { background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 12px; padding: 1.5rem; margin-bottom: 2rem; }
.tco-row { display: flex; gap: 1rem; margin-bottom: 1rem; }
.tco-row-2col > .tco-field { flex: 1; }
.tco-row-3col > .tco-field { flex: 1; }
@media (max-width: 600px) {
  .tco-row { flex-direction: column; }
}

.tco-field label { display: block; font-size: .85rem; font-weight: 600; margin-bottom: .35rem; color: #374151; }
.tco-hint { font-weight: 400; color: #94a3b8; }
.tco-field input[type="text"],
.tco-field select {
  width: 100%; padding: .5rem .75rem; border: 1px solid #cbd5e1; border-radius: 8px;
  font-size: .95rem; background: #fff; box-sizing: border-box;
}
.tco-field input[type="range"] { width: 100%; accent-color: #16a34a; cursor: pointer; }
.tco-range-labels { display: flex; justify-content: space-between; font-size: .75rem; color: #94a3b8; }
.tco-detected { font-size: .8rem; color: #16a34a; }

.tco-btn-calculate {
  display: block; width: 100%; padding: .8rem; margin-top: 1rem;
  background: #16a34a; color: #fff; border: none; border-radius: 8px;
  font-size: 1rem; font-weight: 700; cursor: pointer; transition: background .15s;
}
.tco-btn-calculate:hover { background: #15803d; }

/* Results */
.tco-results { padding-top: 1rem; }
.tco-results-header { display: flex; align-items: center; gap: 1rem; margin-bottom: 1.25rem; }
.tco-results-header h3 { margin: 0; font-size: 1.3rem; }
.tco-badge { background: #dcfce7; color: #166534; font-size: .8rem; font-weight: 600; padding: .3rem .7rem; border-radius: 999px; }

/* Callouts */
.tco-callouts { display: flex; gap: 1rem; margin-bottom: 1.5rem; }
.tco-callout { flex: 1; border-radius: 10px; padding: 1rem 1.25rem; text-align: center; }
.tco-callout-savings { background: #f0fdf4; border: 1px solid #bbf7d0; }
.tco-callout-breakeven { background: #eff6ff; border: 1px solid #bfdbfe; }
.tco-callout-label { display: block; font-size: .8rem; color: #64748b; margin-bottom: .3rem; }
.tco-callout-value { display: block; font-size: 1.5rem; font-weight: 800; }
.tco-positive { color: #16a34a; }
.tco-negative { color: #dc2626; }
@media (max-width: 480px) {
  .tco-callouts { flex-direction: column; }
}

/* Chart */
.tco-chart-wrap { margin-bottom: 1.5rem; }

/* Incentives */
.tco-incentives { background: #fafafa; border: 1px solid #e2e8f0; border-radius: 10px; padding: 1rem 1.25rem; margin-bottom: 1.25rem; }
.tco-incentives h4 { margin: 0 0 .75rem; font-size: 1rem; }
.tco-incentives ul { list-style: none; margin: 0 0 .5rem; padding: 0; }
.tco-incentives li { display: flex; justify-content: space-between; padding: .3rem 0; border-bottom: 1px solid #f1f5f9; font-size: .9rem; }
.tco-incentives li:last-child { border-bottom: none; }
.tco-incentives-total { text-align: right; font-size: .9rem; color: #374151; }

/* CO2 toggle */
.tco-co2-wrap { margin-bottom: 1.25rem; }
.tco-toggle { display: flex; align-items: center; gap: .6rem; cursor: pointer; font-size: .9rem; user-select: none; }
.tco-toggle input { position: absolute; opacity: 0; width: 0; height: 0; }
.tco-toggle-slider {
  position: relative; display: inline-block; width: 36px; height: 20px;
  background: #cbd5e1; border-radius: 999px; transition: background .15s; flex-shrink: 0;
}
.tco-toggle-slider::after {
  content: ''; position: absolute; top: 2px; left: 2px;
  width: 16px; height: 16px; background: #fff; border-radius: 50%; transition: transform .15s;
}
.tco-toggle input:checked + .tco-toggle-slider { background: #16a34a; }
.tco-toggle input:checked + .tco-toggle-slider::after { transform: translateX(16px); }
.tco-co2-result { margin-top: .75rem; background: #ecfdf5; border: 1px solid #a7f3d0; border-radius: 8px; padding: .75rem 1rem; font-size: .9rem; color: #065f46; }

/* Rate info */
.tco-rate-info { font-size: .82rem; color: #64748b; margin-bottom: 1.5rem; }

/* Email capture */
.tco-email-wrap { background: #f0fdf4; border: 1px solid #bbf7d0; border-radius: 10px; padding: 1.25rem; margin-bottom: 1.5rem; }
.tco-email-wrap h4 { margin: 0 0 .35rem; font-size: 1rem; }
.tco-email-wrap p { font-size: .88rem; color: #64748b; margin: 0 0 .75rem; }
.tco-email-form { display: flex; gap: .5rem; }
.tco-email-form input[type="email"] {
  flex: 1; padding: .5rem .75rem; border: 1px solid #bbf7d0; border-radius: 8px; font-size: .9rem;
}
.tco-btn-email {
  padding: .5rem 1rem; background: #16a34a; color: #fff; border: none; border-radius: 8px;
  font-size: .9rem; font-weight: 600; cursor: pointer; white-space: nowrap;
}
.tco-btn-email:hover { background: #15803d; }
.tco-email-msg { font-size: .88rem; color: #15803d; margin-top: .5rem; }
@media (max-width: 480px) {
  .tco-email-form { flex-direction: column; }
}

/* Disclaimer */
.tco-disclaimer { font-size: .78rem; color: #94a3b8; margin-top: 1rem; }
