/* Copyright 2025 The Chromium Authors
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file. */

/* #css_wrapper_metadata_start
 * #type=style-lit
 * #import=chrome://resources/cr_elements/cr_shared_vars.css.js
 * #import=chrome://resources/cr_elements/cr_icons_lit.css.js
 * #import=./shared_style_lit.css.js
 * #include=shared-style-lit cr-icons-lit
 * #css_wrapper_metadata_end */

:host {
  --cr-icon-button-focus-outline-color: var(
      --color-bookmark-manager-item-outline);
  --iron-icon-fill-color: var(--google-grey-700);
  align-items: center;
  color: inherit;
  display: flex;
  flex-direction: row;
  height: 40px;
  padding-inline-start: 20px;
  position: relative;
  text-decoration: none;
  user-select: none;
}

:host([is-selected-item_]) {
  --iron-icon-fill-color: var(--google-blue-600);
  background-color: var(--highlight-color);
}

:host-context([webui-refresh-2026]) {
  &:host {
    --iron-icon-fill-color: var(--color-bookmark-manager-item-text);
    color: var(--color-bookmark-manager-item-text);
  }

  &:host([is-selected-item_]) {
    background-color: var(--color-bookmark-manager-item-background-selected);
  }

  &:host(:focus-visible) {
    outline: solid 2px var(--cr-focus-outline-color);
    outline-offset: -2px;
  }

  #website-title {
    color: var(--color-bookmark-manager-item-title);
  }

  #website-url {
    color: var(--color-bookmark-manager-item-text);
  }

  cr-icon-button {
    --cr-icon-button-fill-color: var(--color-bookmark-manager-item-text);
  }

  @media (prefers-color-scheme: dark) {
    &:host([is-selected-item_]),
    &:host([is-selected-item_]) .folder-icon {
      --cr-icon-button-focus-outline-color: var(
          --color-bookmark-manager-item-outline);
      --iron-icon-fill-color: var(--color-bookmark-manager-item-text);
      color: var(--color-bookmark-manager-item-text);
    }

    &:host([is-selected-item_]) #website-title {
      color: var(--color-bookmark-manager-item-title);
    }

    &:host([is-selected-item_]) cr-icon-button {
      --cr-icon-button-fill-color: var(--color-bookmark-manager-item-text);
    }
  }
}

@media (prefers-color-scheme: dark) {
  :host([is-selected-item_]),
  :host([is-selected-item_]) .folder-icon {
    --cr-icon-button-focus-outline-color: white;
    --iron-icon-fill-color: var(--google-grey-500);
    color: var(--google-grey-700);
  }

  :host([is-selected-item_]) {
    --iron-icon-fill-color: black;
  }
}

<if expr="is_macosx">
.folder-icon {
  margin: 2px;
}
</if>

#website-text {
  display: flex;
  flex: 1;
  overflow: hidden;
}

#website-title {
  color: var(--cr-primary-text-color);
  flex: 1;
  margin-inline-start: 20px;
  text-decoration: none;
}

:host([is-selected-item_]) #website-title {
  flex: 0 auto;
}

@media (prefers-color-scheme: dark) {
  :host([is-selected-item_]) #website-title {
    color: var(--google-grey-900);
  }
}

#website-url {
  /* Transparent version of --cr-secondary-text-color */
  color: rgba(0, 0, 0, 0.54);
  display: none;
  flex: 1;
  margin-inline-start: 20px;
  min-width: 100px;
}

@media (prefers-color-scheme: dark) {
  #website-url {
    color: var(--google-grey-800);
  }
}

:host([is-selected-item_]) #website-url {
  display: block;
}

#icon {
  flex: none;
}

cr-icon-button {
  margin-inline-start: 0;
  margin-inline-end: 12px;
}

@media (prefers-color-scheme: dark) {
  :host([is-selected-item_]) cr-icon-button {
    --cr-icon-button-fill-color: var(--google-grey-700);
  }
}

:host(:focus) {
  z-index: 1;
}

.elided-text {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
