@@ -165,3 +165,146 @@ main {
165165.toast-container {
166166 z-index : 200 !important ;
167167}
168+
169+ /* ===== Offcanvas Menu Styles ===== */
170+ ::deep .offcanvas {
171+ background : linear-gradient (180deg , # 1a1a2e 0% , # 16213e 100% ) !important ;
172+ border-left : 1px solid rgba (255 , 255 , 255 , 0.1 ) !important ;
173+ box-shadow : -5px 0 25px rgba (0 , 0 , 0 , 0.5 ) !important ;
174+ }
175+
176+ ::deep .offcanvas-header {
177+ background : linear-gradient (135deg , # 0f3460 0% , # 1a1a2e 100% );
178+ border-bottom : 1px solid rgba (255 , 255 , 255 , 0.1 );
179+ padding : 1.25rem 1.5rem ;
180+ }
181+
182+ ::deep .offcanvas-title {
183+ color : # fff !important ;
184+ font-weight : 600 ;
185+ font-size : 1.25rem ;
186+ display : flex;
187+ align-items : center;
188+ gap : 0.5rem ;
189+ }
190+
191+ ::deep .offcanvas-header .btn-close {
192+ filter : invert (1 );
193+ opacity : 0.7 ;
194+ transition : all 0.2s ease;
195+ }
196+
197+ ::deep .offcanvas-header .btn-close : hover {
198+ opacity : 1 ;
199+ transform : rotate (90deg );
200+ }
201+
202+ ::deep .offcanvas-body {
203+ padding : 0 !important ;
204+ }
205+
206+ /* Menu items */
207+ ::deep .offcanvas-menu-item {
208+ display : flex;
209+ align-items : center;
210+ gap : 1rem ;
211+ padding : 1rem 1.5rem ;
212+ color : rgba (255 , 255 , 255 , 0.8 );
213+ background : transparent;
214+ border : none;
215+ border-bottom : 1px solid rgba (255 , 255 , 255 , 0.05 );
216+ width : 100% ;
217+ text-align : left;
218+ font-size : 0.95rem ;
219+ cursor : pointer;
220+ transition : all 0.2s ease;
221+ position : relative;
222+ overflow : hidden;
223+ }
224+
225+ ::deep .offcanvas-menu-item ::before {
226+ content : '' ;
227+ position : absolute;
228+ left : 0 ;
229+ top : 0 ;
230+ height : 100% ;
231+ width : 3px ;
232+ background : # e94560 ;
233+ transform : scaleY (0 );
234+ transition : transform 0.2s ease;
235+ }
236+
237+ ::deep .offcanvas-menu-item : hover {
238+ background : rgba (255 , 255 , 255 , 0.05 );
239+ color : # fff ;
240+ padding-left : 1.75rem ;
241+ }
242+
243+ ::deep .offcanvas-menu-item : hover ::before {
244+ transform : scaleY (1 );
245+ }
246+
247+ ::deep .offcanvas-menu-item i {
248+ font-size : 1.25rem ;
249+ width : 1.5rem ;
250+ text-align : center;
251+ color : rgba (255 , 255 , 255 , 0.5 );
252+ transition : color 0.2s ease;
253+ }
254+
255+ ::deep .offcanvas-menu-item : hover i {
256+ color : # e94560 ;
257+ }
258+
259+ ::deep .offcanvas-menu-item .menu-text {
260+ flex : 1 ;
261+ }
262+
263+ ::deep .offcanvas-menu-item .menu-badge {
264+ padding : 0.25rem 0.5rem ;
265+ font-size : 0.65rem ;
266+ font-weight : 600 ;
267+ text-transform : uppercase;
268+ letter-spacing : 0.5px ;
269+ border-radius : 0.25rem ;
270+ background : linear-gradient (135deg , # e94560 0% , # c73659 100% );
271+ color : # fff ;
272+ }
273+
274+ ::deep .offcanvas-menu-item .danger {
275+ color : rgba (255 , 107 , 107 , 0.9 );
276+ }
277+
278+ ::deep .offcanvas-menu-item .danger : hover {
279+ background : rgba (255 , 107 , 107 , 0.1 );
280+ color : # ff6b6b ;
281+ }
282+
283+ ::deep .offcanvas-menu-item .danger ::before {
284+ background : # ff6b6b ;
285+ }
286+
287+ ::deep .offcanvas-menu-item .danger i {
288+ color : rgba (255 , 107 , 107 , 0.7 );
289+ }
290+
291+ ::deep .offcanvas-menu-item .danger : hover i {
292+ color : # ff6b6b ;
293+ }
294+
295+ /* Menu section divider */
296+ ::deep .offcanvas-divider {
297+ height : 1px ;
298+ background : rgba (255 , 255 , 255 , 0.1 );
299+ margin : 0.5rem 0 ;
300+ }
301+
302+ /* Menu section title */
303+ ::deep .offcanvas-section-title {
304+ padding : 1rem 1.5rem 0.5rem ;
305+ font-size : 0.7rem ;
306+ font-weight : 600 ;
307+ text-transform : uppercase;
308+ letter-spacing : 1px ;
309+ color : rgba (255 , 255 , 255 , 0.4 );
310+ }
0 commit comments