@import './clinical-lowlight-theme/ActionMenuCheckbox.module';
@import './orion-fusion-theme/ActionMenuCheckbox.module';

:local {
  .action-menu-checkbox {
    align-items: start;
    color: var(--terra-application-action-menu-checkbox-color, #222a2e);
    cursor: pointer;
    display: flex;
    flex-direction: row;
    outline: none;
    padding-bottom: var(--terra-application-action-menu-checkbox-padding-bottom, 0.5rem);
    padding-left: var(--terra-application-action-menu-checkbox-padding-left, 0.5714rem);
    padding-right: var(--terra-application-action-menu-checkbox-padding-right, 0.7143rem);
    padding-top: var(--terra-application-action-menu-checkbox-padding-top, 0.3571rem);
    position: relative;
    vertical-align: center;

    &:last-child {
      border-bottom: 0;
    }
  }

  .icon,
  .checkbox {
    flex: 0 0 auto;
    height: var(--terra-application-action-menu-checkbox-icon-checkbox-height, 0.8571rem);
    margin-right: var(--terra-application-action-menu-checkbox-icon-checkbox-margin-right, 0.4286rem);
    margin-top: var(--terra-application-action-menu-radio-icon-checkbox-margin-top, 0.1429rem);
    position: relative;
    width: var(--terra-application-action-menu-checkbox-icon-checkbox-width, 0.8571rem);

    > * {
      height: 100%;
      position: absolute;
      width: 100%;
    }
  }

  .content {
    flex: 1 1 auto;
    font-size: var(--terra-application-action-menu-checkbox-content-font-size, 1rem);
    font-weight: var(--terra-application-action-menu-checkbox-content-font-weight, normal);
    overflow: hidden;
    text-align: start;
    word-wrap: break-word;
  }

  .is-disabled {
    color: var(--terra-application-action-menu-checkbox-is-disabled-color, #ccc);
    cursor: default;
  }

  .is-checked {
    .checkbox {
      color: var(--terra-application-action-menu-checkbox-is-checked-checkbox-color, #007cc3);
    }

    .is-disabled {
      .checkbox { // stylelint-disable-line selector-max-compound-selectors
        color: var(--terra-application-action-menu-checkbox-is-disabled-checkbox-color, #ccc);
      }
    }
  }

  .is-actionable {
    cursor: pointer;
    outline: none;

    @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none), (hover: hover) and (pointer: fine) {
      &:hover {
        background-color: var(--terra-application-action-menu-checkbox-is-actionable-hover-background-color, #ebf6fd);
      }
    }
    
    &[data-focus-styles-enabled='true']:focus {
      box-shadow: var(--terra-application-action-menu-checkbox-is-actionable-focus-box-shadow, none);
      outline: var(--terra-application-action-menu-checkbox-is-actionable-focus-outline, 2px dashed #000);
      outline-offset: var(--terra-application-action-menu-checkbox-is-actionable-focus-outline-offset, -2px);
      z-index: 5;
    }

    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
      &[data-focus-styles-enabled='true']:focus {
        outline: none;

        &::before { // stylelint-disable-line max-nesting-depth
          border: var(--terra-application-action-menu-checkbox-is-actionable-ie-focus-before-border, 2px dashed #000);
          bottom: 0;
          box-shadow: var(--terra-application-action-menu-checkbox-is-actionable-ie-focus-before-box-shadow, none);
          content: '';
          left: 0;
          position: absolute;
          right: 0;
          top: 0;
        }
      }
    }
  }
}
