/*
 * Copyright (c) 2026, Salesforce, Inc.,
 * All rights reserved.
 * For full license text, see the LICENSE.txt file
 */

@layer theme {
  .slds-textarea {
    /* Sizing */
    --slds-c-textarea-sizing-min-height: 2.5rem;
    --slds-c-textarea-sizing-border: var(--slds-g-sizing-border-1);
    --slds-c-textarea-radius-border: var(--slds-s-input-radius-border);

    /* Surface */
    --slds-c-textarea-color-background: var(--slds-g-color-surface-container-1);
    --slds-c-textarea-color-background-focus: var(--slds-g-color-surface-container-1);
    --slds-c-textarea-color-foreground: var(--slds-s-input-color);
    --slds-c-textarea-color-border: var(--slds-s-input-color-border);
    --slds-c-textarea-color-border-focus: var(--slds-s-input-color-border-focus);

    /* Shadow */
    --slds-c-textarea-shadow: var(--slds-s-input-shadow);
    --slds-c-textarea-shadow-focus: var(--slds-g-shadow-inset-focus-1);

    /* Spacing */
    --slds-c-textarea-spacing-block-start: var(--slds-g-spacing-2);
    --slds-c-textarea-spacing-block-end: var(--slds-g-spacing-2);
    --slds-c-textarea-spacing-inline-start: var(--slds-g-spacing-3);
    --slds-c-textarea-spacing-inline-end: var(--slds-g-spacing-3);

    /* Coarse-pointer font size. */
    --slds-c-textarea-font-size-coarse: var(--slds-g-font-scale-2);
  }

  .slds-textarea:required {
    --slds-c-textarea-shadow: none;
  }

  .slds-textarea[readonly] {
    --slds-c-textarea-color-border: var(--slds-g-color-border-1);
  }

  .slds-textarea[disabled],
  .slds-textarea.slds-is-disabled {
    --slds-c-textarea-color-background: var(--slds-s-input-color-background-disabled);
    --slds-c-textarea-color-border: var(--slds-s-input-color-border-disabled);
    --slds-c-textarea-color-foreground: var(--slds-s-input-color-disabled);
    --slds-c-textarea-shadow: none;
  }

  .slds-has-error .slds-textarea {
    --slds-c-textarea-color-border: var(--slds-g-color-border-error-1);
    --slds-c-textarea-color-background: var(--slds-s-input-color-background-invalid);
    --slds-c-textarea-color-background-focus: var(--slds-g-color-surface-container-1);
    --slds-c-textarea-color-foreground: var(--slds-s-input-color-invalid);
  }
}
