aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/organisms/toolbar/toolbar.module.scss
blob: 1254f64e370eeb6c587024d4bab1ae9b6e94121a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
@use "../../../styles/abstracts/functions" as fun;
@use "../../../styles/abstracts/variables" as var;
@use "../../../styles/abstracts/placeholders";

.wrapper {
  --toolbar-size: #{fun.convert-px(75)};

  display: flex;
  flex-flow: row wrap;
  align-items: center;
  gap: var(--spacing-sm);
  width: 100%;
  height: var(--toolbar-size);
  position: relative;
  background: var(--color-bg);
  border-top: fun.convert-px(4) solid;
  border-image: radial-gradient(
      ellipse at top,
      var(--color-primary-lighter) 20%,
      var(--color-primary) 100%
    )
    1;
  box-shadow: 0 fun.convert-px(-2) fun.convert-px(3) fun.convert-px(-1)
    var(--color-shadow-dark);

  :global {
    animation: slide-in-from-bottom 0.8s ease-in-out 0s 1;

    @media screen and (min-width: #{var.get-breakpoint("sm")}) {
      animation: slide-in-from-top 0.8s ease-in-out 0s 1;
    }
  }

  @media screen and (max-width: #{var.get-breakpoint("sm")}) {
    justify-content: space-around;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 5;

    .modal {
      width: 100%;
      position: fixed;
      top: unset;
      left: 0;
      bottom: calc(var(--toolbar-size) - #{fun.convert-px(4)});
      max-height: calc(100vh - var(--toolbar-size));
    }
  }

  @media screen and (max-height: #{var.get-breakpoint("2xs")}) {
    --toolbar-size: #{fun.convert-px(70)};
  }

  @media screen and (min-width: #{var.get-breakpoint("sm")}) {
    .modal {
      &--search,
      &--settings {
        min-width: fun.convert-px(380);
      }
    }
  }
}