/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

/* DO NOT EDIT this file directly, instead modify the relevant *.tokens.json file
 * and run `mach buildtokens` to see your changes. */

@import url("chrome://global/skin/design-system/tokens-shared.css");

@layer tokens-foundation-brand {
  :root,
  :host(.anonymous-content-host) {
    /** background-color **/
    --background-color-box-info: light-dark(var(--color-gray-20), var(--color-gray-80));
    --background-color-canvas: light-dark(var(--color-white), var(--color-gray-90));
    --background-color-list-item-hover: color-mix(in srgb, var(--color-accent-primary) 20%, transparent);

    /** border **/
    --border-color: light-dark(var(--color-gray-50), var(--color-gray-70));
    --border-color-deemphasized: light-dark(var(--color-gray-30), var(--color-gray-70));
    --border-color-interactive: light-dark(var(--color-gray-60), var(--color-gray-50));

    /** button **/
    /* TODO Bug 1821203 - Gray use needs to be consolidated */
    --button-background-color: color-mix(in srgb, currentColor 7%, transparent);
    --button-background-color-hover: color-mix(in srgb, currentColor 14%, transparent);
    --button-background-color-active: color-mix(in srgb, currentColor 21%, transparent);
    --button-text-color: light-dark(var(--color-gray-100), var(--color-gray-0));
    --button-text-color-primary: light-dark(var(--color-white), var(--color-gray-100));

    /** font-size **/
    --font-size-root: 15px;
    /* 13px (in-content) */
    --font-size-small: 0.867rem;

    /** page **/
    --page-main-content-width: 664px;
    --page-space-block-start: 64px;

    /** table **/
    --table-header-text-color: light-dark(var(--color-white), var(--color-gray-100));
    /* TODO Bug 1821203 - Gray use needs to be consolidated */
    --table-row-background-color-alternate: light-dark(#f0f0f4, var(--color-gray-80));

    /** text-color **/
    --text-color: light-dark(var(--color-gray-100), var(--color-gray-0));
    --text-color-accent-primary-selected: light-dark(var(--color-white), var(--color-gray-100));
  }
}

/* Bug 1879900: Can't nest media queries inside of :host, :root selector
   until Bug 1879349 lands */
@layer tokens-prefers-contrast {
  @media (prefers-contrast) {
    :root,
    :host(.anonymous-content-host) {
      /** button **/
      --button-text-color-ghost: var(--button-text-color);
      --button-text-color-ghost-disabled: var(--button-text-color-disabled);
      --button-text-color-toolbar: var(--button-text-color);
      --button-text-color-toolbar-disabled: var(--button-text-color-disabled);
    }
  }
}

/* Bug 1879900: Can't nest media queries inside of :host, :root selector
   until Bug 1879349 lands */
@layer tokens-forced-colors {
  @media (forced-colors) {
    :root,
    :host(.anonymous-content-host) {
      /** button **/
      --button-background-color-ghost: ButtonFace;
      --button-background-color-ghost-disabled: var(--button-background-color-disabled);
      --button-background-color-toolbar: var(--button-background-color);
      --button-background-color-toolbar-disabled: var(--button-background-color-disabled);
      --button-text-color-ghost: var(--button-text-color);
      --button-text-color-ghost-disabled: var(--button-text-color-disabled);
      --button-text-color-toolbar: var(--button-text-color);
      --button-text-color-toolbar-disabled: var(--button-text-color-disabled);
    }
  }
}

@media -moz-pref("browser.nova.enabled") {
  @layer tokens-foundation-brand-nova {
    :root,
    :host(.anonymous-content-host) {
      /** text-color **/
      --text-color-accent-primary-selected: light-dark(var(--color-white), var(--color-gray-55));
    }
  }
}
