@import './../theme/reboot';
@import './../theme/buttons';
@import './../theme/type';

.mdc-permanent-drawer {
  /* Use aspect ratio trick to maintain 16:9 aspect ratio on the header */
  /* stylelint-disable selector-no-qualifying-type */
  /* stylelint-enable selector-no-qualifying-type */
  /* TODO(sgomes): Revisit when we have interactive lists. */
  background: #fff;
  background: var(--mdc-theme-background, #fff);
  border-left: 0;
  border-right: 1px solid #e4e4e4;
  left: 0;
  right: initial;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 240px;
  height: 100%;
  box-sizing: border-box;
  overflow: hidden; }
  .mdc-permanent-drawer__toolbar-spacer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-align: flex-center;
        -ms-flex-align: flex-center;
            align-items: flex-center;
    height: 56px;
    padding: 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    box-sizing: border-box;
    /* TODO(sgomes): replace with global breakpoints when we have them */ }
    .mdc-permanent-drawer__toolbar-spacer--theme-dark .mdc-permanent-drawer__toolbar-spacer,
    .mdc-theme--dark .mdc-permanent-drawer__toolbar-spacer {
      border-bottom: 1px solid rgba(255, 255, 255, 0.12); }
    @media (min-width: 600px) {
      .mdc-permanent-drawer__toolbar-spacer {
        height: 64px; } }
  .mdc-permanent-drawer__header {
    position: relative; }
  .mdc-permanent-drawer__header::before {
    display: block;
    padding-top: 56.25%;
    content: ""; }
  .mdc-permanent-drawer__header-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding: 16px;
    box-sizing: border-box; }
  .mdc-permanent-drawer .mdc-list-group,
  .mdc-permanent-drawer .mdc-list {
    padding-right: 0;
    padding-left: 0; }
  .mdc-permanent-drawer .mdc-list-item {
    position: relative;
    padding: 0 16px;
    outline: none;
    color: inherit;
    text-decoration: none;
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.5rem; }
  .mdc-permanent-drawer .mdc-list-item__start-detail {
    color: rgba(0, 0, 0, 0.54); }
    .mdc-permanent-drawer .mdc-list-item__start-detail--theme-dark .mdc-permanent-drawer .mdc-list-item__start-detail,
    .mdc-theme--dark .mdc-permanent-drawer .mdc-list-item__start-detail {
      color: rgba(255, 255, 255, 0.54); }
  .mdc-permanent-drawer--selected.mdc-list-item,
  .mdc-permanent-drawer--selected.mdc-list-item .mdc-list-item__start-detail {
    color: #3f51b5;
    color: var(--mdc-theme-primary, #3f51b5); }
  .mdc-permanent-drawer .mdc-list-item::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: opacity 120ms 0ms cubic-bezier(0.4, 0, 1, 1);
    transition: opacity 120ms 0ms cubic-bezier(0.4, 0, 1, 1);
    border-radius: inherit;
    background: currentColor;
    content: "";
    opacity: 0; }
  .mdc-permanent-drawer .mdc-list-item:focus::before {
    -webkit-transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    opacity: .12; }
  .mdc-permanent-drawer .mdc-list-item:active::before {
    /*
      Slightly darker value for visual distinction.
      This allows a full base that has distinct modes.
      Progressive enhancement with ripples will provide complete button spec alignment.
    */
    -webkit-transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    opacity: .18; }
  .mdc-permanent-drawer .mdc-list-item:active:focus::before {
    -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
            transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
  [dir="rtl"] .mdc-permanent-drawer, .mdc-permanent-drawer[dir="rtl"] {
    border-left: 1px solid #e4e4e4;
    border-right: 0; }
  [dir="rtl"] .mdc-permanent-drawer, .mdc-permanent-drawer[dir="rtl"] {
    left: initial;
    right: 0; }
  .mdc-permanent-drawer--theme-dark,
  .mdc-theme--dark .mdc-permanent-drawer {
    background: #212121;
    color: white;
    color: var(--mdc-theme-text-primary-on-dark, white);
    border-left: 0;
    border-right: 1px solid rgba(255, 255, 255, 0.12); }
    [dir="rtl"] .mdc-permanent-drawer--theme-dark, .mdc-permanent-drawer--theme-dark[dir="rtl"], [dir="rtl"]
    .mdc-theme--dark .mdc-permanent-drawer,
    .mdc-theme--dark .mdc-permanent-drawer[dir="rtl"] {
      border-left: 1px solid rgba(255, 255, 255, 0.12);
      border-right: 0; }
  .mdc-permanent-drawer--floating {
    background: none;
    border-left: 0;
    border-right: none; }
    [dir="rtl"] .mdc-permanent-drawer--floating, .mdc-permanent-drawer--floating[dir="rtl"] {
      border-left: none;
      border-right: 0; }
    .mdc-permanent-drawer--floating--theme-dark,
    .mdc-theme--dark .mdc-permanent-drawer--floating {
      background: none;
      border-left: 0;
      border-right: none; }
      [dir="rtl"] .mdc-permanent-drawer--floating--theme-dark, .mdc-permanent-drawer--floating--theme-dark[dir="rtl"], [dir="rtl"]
      .mdc-theme--dark .mdc-permanent-drawer--floating,
      .mdc-theme--dark .mdc-permanent-drawer--floating[dir="rtl"] {
        border-left: none;
        border-right: 0; }

.mdc-temporary-drawer {
  /* Use aspect ratio trick to maintain 16:9 aspect ratio on the header */
  /* stylelint-disable selector-no-qualifying-type */
  /* stylelint-enable selector-no-qualifying-type */
  /* TODO(sgomes): Revisit when we have interactive lists. */
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  pointer-events: none;
  box-sizing: border-box;
  contain: strict;
  z-index: 3;
  /* Shaded background */ }
  .mdc-temporary-drawer__toolbar-spacer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    -webkit-box-align: flex-center;
        -ms-flex-align: flex-center;
            align-items: flex-center;
    height: 56px;
    padding: 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    box-sizing: border-box;
    /* TODO(sgomes): replace with global breakpoints when we have them */ }
    .mdc-temporary-drawer__toolbar-spacer--theme-dark .mdc-temporary-drawer__toolbar-spacer,
    .mdc-theme--dark .mdc-temporary-drawer__toolbar-spacer {
      border-bottom: 1px solid rgba(255, 255, 255, 0.12); }
    @media (min-width: 600px) {
      .mdc-temporary-drawer__toolbar-spacer {
        height: 64px; } }
  .mdc-temporary-drawer__header {
    position: relative; }
  .mdc-temporary-drawer__header::before {
    display: block;
    padding-top: 56.25%;
    content: ""; }
  .mdc-temporary-drawer__header-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding: 16px;
    box-sizing: border-box; }
  .mdc-temporary-drawer .mdc-list-group,
  .mdc-temporary-drawer .mdc-list {
    padding-right: 0;
    padding-left: 0; }
  .mdc-temporary-drawer .mdc-list-item {
    position: relative;
    padding: 0 16px;
    outline: none;
    color: inherit;
    text-decoration: none;
    font-family: Roboto, sans-serif;
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 0.875rem;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.5rem; }
  .mdc-temporary-drawer .mdc-list-item__start-detail {
    color: rgba(0, 0, 0, 0.54); }
    .mdc-temporary-drawer .mdc-list-item__start-detail--theme-dark .mdc-temporary-drawer .mdc-list-item__start-detail,
    .mdc-theme--dark .mdc-temporary-drawer .mdc-list-item__start-detail {
      color: rgba(255, 255, 255, 0.54); }
  .mdc-temporary-drawer--selected.mdc-list-item,
  .mdc-temporary-drawer--selected.mdc-list-item .mdc-list-item__start-detail {
    color: #3f51b5;
    color: var(--mdc-theme-primary, #3f51b5); }
  .mdc-temporary-drawer .mdc-list-item::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: opacity 120ms 0ms cubic-bezier(0.4, 0, 1, 1);
    transition: opacity 120ms 0ms cubic-bezier(0.4, 0, 1, 1);
    border-radius: inherit;
    background: currentColor;
    content: "";
    opacity: 0; }
  .mdc-temporary-drawer .mdc-list-item:focus::before {
    -webkit-transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    opacity: .12; }
  .mdc-temporary-drawer .mdc-list-item:active::before {
    /*
      Slightly darker value for visual distinction.
      This allows a full base that has distinct modes.
      Progressive enhancement with ripples will provide complete button spec alignment.
    */
    -webkit-transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: opacity 180ms 0ms cubic-bezier(0, 0, 0.2, 1);
    opacity: .18; }
  .mdc-temporary-drawer .mdc-list-item:active:focus::before {
    -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
            transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }
  .mdc-temporary-drawer::before {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6);
    content: "";
    opacity: 0;
    opacity: var(--mdc-temporary-drawer-opacity, 0);
    will-change: opacity;
    box-sizing: border-box; }
  .mdc-temporary-drawer__drawer {
    background: #fff;
    background: var(--mdc-theme-background, #fff);
    box-shadow: 0px 8px 10px -5px rgba(0, 0, 0, 0.2), 0px 16px 24px 2px rgba(0, 0, 0, 0.14), 0px 6px 30px 5px rgba(0, 0, 0, 0.12);
    left: 0;
    right: initial;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: calc(100% - 56px);
    max-width: 280px;
    height: 100%;
    -webkit-transform: translateX(-107%);
            transform: translateX(-107%);
    -webkit-transform: translateX(calc(-100% - 20px));
            transform: translateX(calc(-100% - 20px));
    will-change: transform;
    box-sizing: border-box;
    overflow: hidden;
    -ms-touch-action: none;
        touch-action: none;
    /* TODO(sgomes): replace with global breakpoints when we have them */ }
    [dir="rtl"] .mdc-temporary-drawer__drawer, .mdc-temporary-drawer__drawer[dir="rtl"] {
      left: initial;
      right: 0; }
    .mdc-temporary-drawer--theme-dark .mdc-temporary-drawer__drawer,
    .mdc-theme--dark .mdc-temporary-drawer__drawer {
      background: #303030;
      color: white;
      color: var(--mdc-theme-text-primary-on-dark, white); }
    [dir="rtl"] .mdc-temporary-drawer .mdc-temporary-drawer__drawer,
    .mdc-temporary-drawer[dir="rtl"] .mdc-temporary-drawer__drawer {
      -webkit-transform: translateX(107%);
              transform: translateX(107%);
      -webkit-transform: translateX(calc(100% + 20px));
              transform: translateX(calc(100% + 20px)); }
    @media (min-width: 600px) {
      .mdc-temporary-drawer__drawer {
        width: calc(100% - 64px);
        max-width: 320px; } }
  .mdc-temporary-drawer__content {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    margin: 0;
    overflow-x: hidden;
    overflow-y: auto;
    box-sizing: border-box;
    -webkit-overflow-scrolling: touch;
    -ms-touch-action: pan-y;
        touch-action: pan-y; }
  .mdc-temporary-drawer__footer {
    box-shadow: 0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12);
    -ms-flex-negative: 0;
        flex-shrink: 0; }
  .mdc-temporary-drawer--animating::before {
    -webkit-transition: opacity 0.3s 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: opacity 0.3s 0ms cubic-bezier(0, 0, 0.2, 1); }
  .mdc-temporary-drawer--animating.mdc-temporary-drawer--open .mdc-temporary-drawer__drawer {
    -webkit-transition: -webkit-transform 0.33s 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: -webkit-transform 0.33s 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: transform 0.33s 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: transform 0.33s 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 0.33s 0ms cubic-bezier(0, 0, 0.2, 1); }
  .mdc-temporary-drawer--animating .mdc-temporary-drawer__drawer {
    -webkit-transition: -webkit-transform 0.13s 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: -webkit-transform 0.13s 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: transform 0.13s 0ms cubic-bezier(0, 0, 0.2, 1);
    transition: transform 0.13s 0ms cubic-bezier(0, 0, 0.2, 1), -webkit-transform 0.13s 0ms cubic-bezier(0, 0, 0.2, 1); }
  .mdc-temporary-drawer--open {
    pointer-events: auto; }
    .mdc-temporary-drawer--open::before {
      opacity: 1;
      opacity: var(--mdc-temporary-drawer-opacity, 1); }
    .mdc-temporary-drawer--open .mdc-temporary-drawer__drawer {
      -webkit-transform: none;
              transform: none; }
    [dir="rtl"] .mdc-temporary-drawer--open .mdc-temporary-drawer__drawer, .mdc-temporary-drawer--open[dir="rtl"] .mdc-temporary-drawer__drawer {
      -webkit-transform: none;
              transform: none; }


// =============
// CUSTOM STYLES
// =============


.main-drawer {
  z-index: 30;

  & > .mdc-temporary-drawer__drawer {
    background-color: #9f25b3;
    background-image: linear-gradient(to top, #4023ae 0%, #9f25b3 100%);
    color: #eee;
  }

  .mdc-temporary-drawer__header {
    &::before {
      padding-top: 70px;
    }
  }

  .mdc-temporary-drawer__header-content {
    padding: 0;
    height: 70px;
    align-items: center;

    &.mdc-theme--primary-bg {
      background-color: inherit !important;
    }

    .title {
      font-size: 1.3rem;
      padding: 0 1.5rem;
      font-weight: 300;
      margin: 0;
    }

    .btn-close-nav {
      position: absolute;
      right: 0.5rem;
      top: 1rem;
      line-height: 1;
      background-color: transparent;
      color: #eee;
    }
  }

  .nav {
    padding: 0 0 1rem;
    margin: 0 0 1rem;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  }

  .nav > .nav-item {
    display: block;
  }

  .nav > .nav-item > .nav-link {
    display: flex;
    align-items: center;
    color: #eee;
    padding: 0 1rem;
    font-size: 0.7rem;
    border-left: 0.4rem solid transparent;
    letter-spacing: 0.09rem;
    text-transform: uppercase;
    font-weight: 300;
    min-height: 54px;

    &:hover {
      border-color: rgba(81, 30, 113, 0.54);
    }

    &.active {
      border-color: rgba(81, 30, 113, 0.54);
      background-color: rgba(225, 54, 255, 0.14);
    }

    &.disabled {
      opacity: 0.6;
      cursor: not-allowed;

      &:hover {
        border-color: transparent;
      }
    }
  }

  .section-title {
    font-size: 1.1rem;
    padding: 1rem 1rem 1rem 1.5rem;
    font-weight: 300;
    min-height: 54px;
    display: flex;
    align-items: center;
  }

  .brands {
    padding: 1rem;
    margin-top: 1rem;
    opacity: 0.7;

    img {
      margin-right: 0.5rem;
    }
  }
}
