.cls-lc {
  --cls-border: var(--color-border, #cbd5e1);
  --cls-bg: var(--color-muted, #e9eef5);
  --cls-accent: var(--color-foreground, #0f172a);
  --cls-accent-2: var(--color-primary, #1e3a8a);
  --cls-cta: var(--color-accent, #b45309);
  --cls-text: #334155;
  max-width: 40rem;
  margin: 1.75rem 0 2.25rem;
  padding: 1.5rem;
  background: var(--cls-bg);
  border: 1px solid var(--cls-border);
  border-radius: 8px;
  font-family: var(--font-body, Lato, sans-serif);
  font-size: 1rem;
  line-height: 1.5;
  color: var(--cls-text);
  box-shadow: 0 4px 6px rgba(15, 23, 42, 0.08);
}

.cls-lc-verified {
  margin: 0 0 1rem;
  font-size: 0.8rem;
  opacity: 0.7;
}

.cls-lc-tabs {
  display: flex;
  gap: 0.4rem;
  margin-bottom: 1.15rem;
  flex-wrap: wrap;
}

.cls-lc-tab {
  appearance: none;
  border: 1px solid var(--cls-border);
  background: #fff;
  color: var(--cls-accent-2);
  padding: 0.5rem 0.95rem;
  cursor: pointer;
  font: inherit;
  font-size: 0.92rem;
  font-weight: 700;
  border-radius: 6px;
  min-height: 44px;
  transition: background 200ms ease, color 200ms ease;
}

.cls-lc-tab:hover {
  border-color: var(--cls-accent-2);
}

.cls-lc-tab.is-active {
  background: var(--cls-accent-2);
  color: #fff;
  border-color: var(--cls-accent-2);
}

.cls-lc-form {
  display: grid;
  gap: 0.95rem;
}

.cls-lc-form label {
  display: grid;
  gap: 0.4rem;
  font-weight: 700;
  font-size: 0.92rem;
  color: var(--cls-accent);
}

.cls-lc-form input[type='date'],
.cls-lc-form input[type='number'],
.cls-lc-form select {
  font: inherit;
  padding: 0.55rem 0.7rem;
  border: 1px solid var(--cls-border);
  border-radius: 6px;
  background: #fff;
  max-width: 100%;
  color: var(--cls-text);
  min-height: 44px;
}

.cls-lc-form input:focus,
.cls-lc-form select:focus {
  outline: 2px solid var(--cls-accent-2);
  outline-offset: 1px;
}

.cls-lc-check {
  display: flex !important;
  align-items: flex-start;
  gap: 0.55rem;
  font-weight: 500 !important;
}

.cls-lc-check input {
  margin-top: 0.25rem;
  width: 1.05rem;
  height: 1.05rem;
}

.cls-lc-btn {
  appearance: none;
  border: none;
  background: var(--cls-cta);
  color: #fff;
  font: inherit;
  font-weight: 700;
  padding: 0.7rem 1.25rem;
  cursor: pointer;
  border-radius: 6px;
  justify-self: start;
  min-height: 48px;
  transition: opacity 200ms ease, transform 200ms ease;
}

.cls-lc-btn:hover {
  opacity: 0.92;
  transform: translateY(-1px);
}

.cls-lc-result {
  margin-top: 1.1rem;
  padding: 1rem 1.1rem;
  background: #fff;
  border: 1px solid var(--cls-border);
  border-radius: 6px;
}

.cls-lc-amount {
  font-family: var(--font-heading, 'EB Garamond', serif);
  font-size: 1.65rem;
  margin: 0 0 0.5rem;
  color: var(--cls-accent-2);
}

.cls-lc-note,
.cls-lc-disclaimer {
  font-size: 0.86rem;
  opacity: 0.88;
  margin: 0.95rem 0 0;
}

.cls-lc-error {
  color: #dc2626;
  margin: 0;
}

@media (prefers-reduced-motion: reduce) {
  .cls-lc-tab,
  .cls-lc-btn {
    transition: none;
  }
}
