
/*
 * This file is generated by o-spreadsheet build tools. Do not edit it.
 * @see https://github.com/odoo/o-spreadsheet
 * @version 19.0.24
 * @date 2026-03-06T07:17:58.293Z
 * @hash 7e8f4d894
 */
/* Originates from src/components/top_bar/top_bar.scss */
.o-spreadsheet {
  @media (max-width: 1200px) {
    .o-topbar-responsive {
      flex-direction: column !important;
    }
  }

  @media (max-width: 768px) {
    .irregularity-map span {
      overflow: auto;
      align-items: normal !important;
    }
  }

  .tool-container {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

/* Originates from src/components/top_bar/dropdown_action/dropdown_action.scss */
.o-spreadsheet {
  .o-dropdown {
    position: relative;
    display: flex;
    align-items: center;
  }

  .o-dropdown-content {
    background-color: white;

    .o-dropdown-line {
      display: flex;

      > span {
        padding: 4px;
      }
    }
  }
}

/* Originates from src/components/spreadsheet/spreadsheet.scss */
.o-spreadsheet {
  color: $os-text-body;

  input {
    background-color: white;
  }

  &.o-spreadsheet-mobile .o-spreadsheet-topbar-wrapper,
  .o-spreadsheet-bottombar-wrapper {
    box-shadow: 0 0 3px 1px lightgray;
  }
  .o-spreadsheet-bottombar-wrapper {
    overscroll-behavior: none;
  }
}

/* Originates from src/components/small_bottom_bar/small_bottom_bar.scss */
.o-spreadsheet .o-spreadsheet-small-bottom-bar {
  background-color: $background-gray-color;
  border-bottom: #f2f2f2;

  .o-selection-button {
    border-radius: 2px;
    background-color: #e7e9ed;
    .o-icon {
      width: 24px;
      height: 24px;
      color: #6aa84f;
    }
  }

  .o-small-composer {
    background-color: white;
    border: lightgrey solid 1px;
    line-height: 26px;
    display: flex;
  }

  .bottom-bar-menu {
    background-color: $background-gray-color;
    border-top: 1px solid lightgrey;
    border-bottom: 1px solid lightgrey;
  }

  .o-spreadsheet-bottom-bar {
    border: none;
  }

  .o-composer {
    overscroll-behavior: contain;
  }

  .o-composer-assistant-container {
    transform: translateY(calc(-26px - 100%));
  }

  .o-spreadsheet-editor-symbol {
    height: 33px;
    cursor: pointer;
    user-select: none;
  }
}

/* Originates from src/components/small_bottom_bar/ribbon_menu/ribbon_menu.scss */
$item-height: 40px;

.o-spreadsheet .o-ribbon-menu {
  height: 250px;

  .o-ribbon-title {
    background-color: lighten($background-gray-color, 5%);
    border-bottom: 2px solid #e0e2e4;
  }
  .o-previous-button {
    background-color: $background-gray-color;
  }
  .o-ribbon-menu-wrapper {
    max-height: 100%;

    &.scroll-top::before {
      width: 100%;
      height: 15px;
      content: "";
      background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), transparent);
      position: absolute;
      pointer-events: none;
    }
    &.scroll-bottom::after {
      width: 100%;
      height: 15px;
      content: "";
      background: linear-gradient(to top, rgba(0, 0, 0, 0.2), transparent);
      position: absolute;
      pointer-events: none;
      z-index: 1;
      bottom: 0;
    }
  }
  .o-menu-item {
    height: $item-height;
  }
}

/* Originates from src/components/side_panel/pivot/pivot_custom_groups_collapsible/pivot_custom_groups_collapsible.scss */
.o-spreadsheet .o-pivot-custom-groups {
  .o_side_panel_collapsible_title {
    font-size: 13px !important;
    padding: 4px 0 4px 0 !important;

    .collapsor > div {
      padding-left: 2px !important;
    }

    .collapsor-arrow {
      transform-origin: 5px 7px;
      .o-icon {
        width: 10px;
        height: 14px;
      }
    }
  }

  .os-collapse > div {
    padding: 0 !important;
  }
}

/* Originates from src/components/side_panel/chart/building_blocks/pie_hole_size/pie_hole_size.scss */
.o-spreadsheet .o-sidePanel {
  .o-pie-hole-size-input {
    width: 40px;
  }
}

/* Originates from src/components/side_panel/carousel_panel/carousel_panel.scss */
.o-spreadsheet .o-carousel-panel {
  .o-carousel-preview {
    height: 60px;
    background-color: #fff;
    border-left: 5px solid transparent;

    &:not(:hover):not(.o-dragging) .o-drag-handle {
      display: none !important;
    }

    &.o-selected {
      border-color: $os-button-primary-bg;
    }

    .o-drag-handle {
      cursor: move;

      .o-icon {
        width: 6px;
        height: 30px;
      }
    }

    .o-carousel-preview-icon {
      width: 48px;
      height: 48px;

      .o-icon {
        width: 36px;
        height: 36px;
      }
    }
  }
}

/* Originates from src/components/full_screen_figure/full_screen_figure.scss */
.o-spreadsheet {
  .o-fullscreen-figure-overlay {
    z-index: 34; /* TODO: use css variables once ComponentsImportance is available in the scss. */
    background-color: rgba(0, 0, 0, 0.4);
    padding: 60px;

    .o-figure:not(:hover) .o-dashboard-chart-select {
      display: block !important;
    }
  }
}

/* Originates from src/components/filters/filter_menu_value_list/filter_menu_value_list.scss */
.o-spreadsheet .o-filter-menu {
  .o-search-icon {
    right: 5px;
    top: 3px;
    opacity: 0.4;

    svg {
      height: 16px;
      width: 16px;
      vertical-align: middle;
    }
  }

  .o-filter-menu-actions {
    display: flex;
    flex-direction: row;
    margin-bottom: 4px;
  }

  .o-filter-menu-list {
    flex: auto;
    overflow-y: auto;
    border: 1px solid $os-gray-300;
    height: 130px;

    .o-filter-menu-no-values {
      color: #949494;
      font-style: italic;
    }
  }
}

/* Originates from src/components/figures/figure_container/figure_container.scss */
.o-spreadsheet {
  .o-figure.o-add-to-carousel::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.4);
    backdrop-filter: blur(2px);
    z-index: 5;
    pointer-events: none;
  }

  .o-figure.o-add-to-carousel::after {
    content: "+";
    position: absolute;
    top: calc(50% - 15px);
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 120px;
    color: rgba(0, 0, 0, 0.5);
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
    z-index: 10;
    pointer-events: none;
    font-weight: bold;
  }
}

/* Originates from src/components/figures/figure_carousel/figure_carousel.scss */
.o-spreadsheet {
  .o-carousel-content {
    height: 0; /* To make flex-fill work */
  }

  .o-carousel-empty {
    background-color: #ffffff;

    .o-icon {
      width: 50%;
      height: 50%;
      color: $os-gray-400;
    }
  }

  .o-carousel-header {
    z-index: 1;

    overflow: hidden;
    padding-left: 4px; /* Align with MIN_CELL_TEXT_MARGIN */

    border: 1px solid transparent;

    &.o-carousel-header-floating {
      border: 1px solid $os-figure-border-color;
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    }

    .o-carousel-title {
      max-width: 60%;
    }

    .o-carousel-tabs {
      width: 0; /* To make flex-fill work */
    }

    .o-carousel-button {
      cursor: pointer;

      &.o-carousel-tabs-dropdown {
        font-size: 16px;
        line-height: 16px;
      }

      &.o-carousel-full-screen-button {
        margin: 1px;
      }

      &.o-carousel-menu-button {
        padding: 3px 5px;
      }

      &.active,
      &:hover {
        background-color: $os-button-hover-bg;
        color: $os-button-hover-text-color;
      }
    }

    .o-carousel-tab {
      cursor: pointer;
      max-width: 150px;
      font-size: 14px;

      &:hover {
        color: $os-button-primary-bg;
      }

      &.selected {
        color: $os-button-primary-bg;
        font-weight: 600;
      }
    }
  }
}

/* Originates from src/components/figures/chart/chart_dashboard_menu/chart_dashboard_menu.scss */
.o-spreadsheet .o-figure {
  &:not(:hover):not(:focus-within) .o-dashboard-chart-select {
    visibility: hidden;
  }

  .o-dashboard-chart-select {
    cursor: default;
    > div {
      height: 28px;
    }

    .o-chart-dashboard-item {
      &.active,
      &:hover,
      &:target {
        color: $os-gray-900 !important;
        background: rgba(0, 0, 0, 0.1);
      }

      .o-chart-preview {
        stroke-width: 2px;
        transform: scale(1.1);
        width: 16px;
        height: 16px;
      }
    }
  }
}

.o-spreadsheet {
  &.o-spreadsheet-mobile .o-figure {
    .o-dashboard-chart-select {
      display: block !important;
    }
  }
}

/* Originates from src/components/dashboard/clickable_cell_sort_icon/clickable_cell_sort_icon.scss */
.o-spreadsheet {
  .sorting-icon {
    margin: 1px;

    .fa-sort-desc {
      transform: translateY(-2px);
    }
    .fa-sort-asc {
      transform: translateY(4px);
    }
  }

  div:not(:hover) > .sorting-icon:has(> .fa-sort) {
    display: none;
  }
}

/* Originates from src/components/composer/formula_assistant/formula_assistant.scss */
.o-spreadsheet .o-formula-assistant {
  background: #ffffff;
  .o-formula-assistant-head {
    background-color: #f2f2f2;
    padding: 10px;
  }
  .o-formula-assistant-core {
    border-bottom: 1px solid gray;
  }
  .o-formula-assistant-arg-description {
    font-size: 85%;
  }
  .o-formula-assistant-focus {
    div:first-child,
    span {
      color: $os-composer-assistant-color;
      text-shadow: 0px 0px 1px $os-composer-assistant-color;
    }
    div:last-child {
      color: black;
    }
  }
  .o-formula-assistant-gray {
    color: gray;
  }
  .collapsor {
    cursor: pointer;
    &:hover {
      background-color: $os-gray-400;
      color: $os-button-active-text-color;
    }

    .collapsor-arrow {
      transform-origin: 6px 8px;
      transform: rotate(-180deg);
      transition: transform 0.2s ease-in-out;

      .o-icon {
        width: 12px;
        height: 16px;
      }
    }
    &.collapsed .collapsor-arrow {
      transform: rotate(0deg);
    }
  }
}
