@import 'src/_variables.scss';
@import 'src/_logical.scss';
.mod-modal {
  overflow: hidden;

  &.peek {
    .mod-modal-panel {
      /* Explanation:
       * Modal is positioned vertically centered.
       * 100vh - 100% = Distance between modal's top+bottom boundaries and screen
       * (100vh - 100%) / 2 = Distance between bottom (or top) boundary and screen
       * + 100% - we move modal completely off-screen, it's top boundary touches
       *   bottom of the screen
       * - 50px - leaving tiny amount of space so that titlebar + tiny amount of modal is visible
       */
      transform: translateY(calc(((100vh - 100%) / 2 + 100%) - 50px));

      @media all and (max-width: 800px) {
        /* For mobile, the modal takes 100% of the available screen.
           This ensures the minimized modal is always 50px above the browser bottom bar regardless of whether or not it is visible.
        */
        transform: translateY(calc(100% - 50px));
      }

      .#{$writing-mode-vertical}rl & {
        transform: translateX(calc(50px - ((100vw - 100%) / 2 + 100%)));
        @media all and (max-height: 800px) {
          transform: translateX(calc(50px - 100%));
        }
      }
      .#{$writing-mode-vertical}lr & {
        transform: translateX(calc(((100vw - 100%) / 2 + 100%) - 50px));
        @media all and (max-height: 800px) {
          transform: translateX(calc(100% - 50px));
        }
      }
    }
  }

  .mod-modal-panel {
    overflow: hidden;
    transition: transform;
    transition-timing-function: ease-in-out;
    transition-duration: 300ms;
    inline-size: 1000px;
    max-inline-size: 90vi;
    block-size: 90vb;

    @media all and (max-width: 800px) {
      max-inline-size: 100vi;
      block-size: 100%;
    }
    @media all and (max-height: 800px) {
      [class^=#{$writing-mode-vertical}] & {
        max-inline-size: 100vi;
        block-size: 100%;
      }
    }

    .panel-body {
      block-size: inherit;
    }
  }
}
