/*
 * coven-design · themes/product.css
 * Product-oriented semantics: input, diff, chart, and family surface overrides.
 * Opt-in — imported by product shells, not the marketing/docs default.
 */

:root,
[data-cv-theme="light"] {
  --cv-input-bg:            var(--cv-bg-surface);
  --cv-input-text:          var(--cv-text-primary);
  --cv-input-placeholder:   var(--cv-text-muted);
  --cv-input-border:        var(--cv-border-subtle);
  --cv-input-border-hover:  var(--cv-border-strong);
  --cv-input-border-focus:  var(--cv-border-focus);
  --cv-input-disabled-bg:   var(--cv-bg-recessed);
  --cv-input-disabled-text: var(--cv-text-muted);
  --cv-input-invalid:       var(--cv-status-danger);

  --cv-diff-add-bg:      color-mix(in oklab, var(--cv-palette-emerald-500) 14%, transparent);
  --cv-diff-add-text:    #157347;
  --cv-diff-add-border:  color-mix(in oklab, var(--cv-palette-emerald-500) 40%, transparent);
  --cv-diff-remove-bg:   color-mix(in oklab, var(--cv-palette-rose-500) 14%, transparent);
  --cv-diff-remove-text: #b23a4e;
  --cv-diff-remove-border: color-mix(in oklab, var(--cv-palette-rose-500) 40%, transparent);
  --cv-diff-meta-bg:     var(--cv-bg-recessed);
  --cv-diff-meta-text:   var(--cv-text-muted);
}

[data-cv-theme="dark"] {
  --cv-input-bg:            var(--cv-bg-elevated);
  --cv-input-text:          var(--cv-text-primary);
  --cv-input-placeholder:   var(--cv-text-muted);
  --cv-input-border:        var(--cv-border-subtle);
  --cv-input-border-hover:  var(--cv-border-strong);
  --cv-input-border-focus:  var(--cv-border-focus);
  --cv-input-disabled-bg:   var(--cv-bg-recessed);
  --cv-input-disabled-text: var(--cv-text-muted);
  --cv-input-invalid:       var(--cv-status-danger);

  --cv-diff-add-bg:      color-mix(in oklab, var(--cv-palette-emerald-500) 22%, transparent);
  --cv-diff-add-text:    #6fe0a6;
  --cv-diff-add-border:  color-mix(in oklab, var(--cv-palette-emerald-500) 48%, transparent);
  --cv-diff-remove-bg:   color-mix(in oklab, var(--cv-palette-rose-500) 22%, transparent);
  --cv-diff-remove-text: #ff9db0;
  --cv-diff-remove-border: color-mix(in oklab, var(--cv-palette-rose-500) 48%, transparent);
  --cv-diff-meta-bg:     var(--cv-bg-recessed);
  --cv-diff-meta-text:   var(--cv-text-muted);
}
