import { css } from 'lit';
import componentStyles from '../../styles/component.styles.mjs';

const styles = css`
  ${componentStyles}

  :host {
    --max-width: 20rem;
    --hide-delay: 0ms;
    --show-delay: var(--flow-ui-tooltip-delay-fast);

    display: contents;
  }

  .tooltip {
    --arrow-size: var(--flow-ui-tooltip-arrow-size);
    --arrow-color: var(--flow-ui-tooltip-background-color);
  }

  .tooltip::part(popup) {
    pointer-events: none;
    z-index: var(--flow-ui-z-index-tooltip);
  }

  .tooltip[placement^='top']::part(popup) {
    transform-origin: bottom;
  }

  .tooltip[placement^='bottom']::part(popup) {
    transform-origin: top;
  }

  .tooltip[placement^='left']::part(popup) {
    transform-origin: right;
  }

  .tooltip[placement^='right']::part(popup) {
    transform-origin: left;
  }

  .tooltip__body {
    display: block;
    width: max-content;
    max-width: var(--max-width);
    border-radius: var(--flow-ui-tooltip-border-radius);
    background-color: var(--flow-ui-tooltip-background-color);
    font-family: var(--flow-ui-tooltip-font-family);
    font-size: var(--flow-ui-tooltip-font-size);
    font-weight: var(--flow-ui-tooltip-font-weight);
    line-height: var(--flow-ui-tooltip-line-height);
    color: var(--flow-ui-tooltip-color);
    padding: var(--flow-ui-tooltip-padding);
    pointer-events: none;
  }
`;

export { styles as default };
