File size: 2,238 Bytes
da61391
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
.main-layout {
  display: flex;
  flex-direction: column;
  height: 100vh;
  background-color: #fafafa;

  .header-toolbar {
    position: sticky;
    top: 0;
    z-index: 100;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);

    mat-toolbar-row {
      padding: 0 16px;
    }

    .logo {
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: 20px;
      font-weight: 500;

      mat-icon {
        vertical-align: middle;
      }
    }

    .spacer {
      flex: 1;
    }

    .header-actions {
      display: flex;
      align-items: center;
      gap: 16px;

      .username {
        display: flex;
        align-items: center;
        gap: 8px;
        font-size: 14px;

        mat-icon {
          font-size: 20px;
          width: 20px;
          height: 20px;
          vertical-align: middle;
        }
      }

      .activity-button {
        position: relative;

        mat-icon {
          vertical-align: middle;
        }
      }
    }
  }

  nav {
    background-color: white;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    position: sticky;
    top: 64px;
    z-index: 99;

    .mat-mdc-tab-nav-bar {
      padding: 0 16px;
    }

    .mat-mdc-tab-link {
      height: 48px;
      opacity: 0.7;
      font-weight: 500;

      &.mdc-tab--active {
        opacity: 1;
      }

      .tab-content {
        display: flex;
        align-items: center;
        gap: 8px;

        mat-icon {
          font-size: 20px;
          width: 20px;
          height: 20px;
          vertical-align: middle;
        }

        span {
          vertical-align: middle;
        }
      }
    }
  }

  .main-content {
    flex: 1;
    overflow: auto;
    background-color: #fafafa;
  }
}

// Material overrides
::ng-deep {
  .mat-toolbar-single-row {
    height: 64px;
  }

  .mat-mdc-menu-panel {
    margin-top: 8px;
  }

  .mat-mdc-tab-header {
    border-bottom: none;
  }

  .mat-mdc-tab-labels {
    gap: 8px;
  }
}

// Responsive
@media (max-width: 768px) {
  .main-layout {
    nav {
      .mat-mdc-tab-nav-bar {
        padding: 0 8px;
      }

      .mat-mdc-tab-link {
        min-width: auto;
        padding: 0 12px;

        .tab-content span {
          display: none;
        }
      }
    }
  }
}