@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fraunces-vietnamese-400-normal-CvGt0Ybw.woff2) format("woff2"),url(/assets/fraunces-vietnamese-400-normal-B65MOf9T.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fraunces-latin-ext-400-normal-D8gbi3Gu.woff2) format("woff2"),url(/assets/fraunces-latin-ext-400-normal-UihxqfOe.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fraunces-latin-400-normal-6IfK1voy.woff2) format("woff2"),url(/assets/fraunces-latin-400-normal-NUPT2cO8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fraunces-vietnamese-500-normal-GOH_-EGq.woff2) format("woff2"),url(/assets/fraunces-vietnamese-500-normal-B-KbxExq.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fraunces-latin-ext-500-normal-Z5DV8IzT.woff2) format("woff2"),url(/assets/fraunces-latin-ext-500-normal-BMcFk1Xs.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fraunces-latin-500-normal-DnGCNyPD.woff2) format("woff2"),url(/assets/fraunces-latin-500-normal-BTR4KCeb.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-vietnamese-600-normal-BjlAJixd.woff2) format("woff2"),url(/assets/fraunces-vietnamese-600-normal-DlAl5EAR.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-ext-600-normal-BtzmzP0X.woff2) format("woff2"),url(/assets/fraunces-latin-ext-600-normal-B0Dy4lqi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fraunces-latin-600-normal-BFCDtZfi.woff2) format("woff2"),url(/assets/fraunces-latin-600-normal-DL5QCzvS.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}html,body,#root{height:100%}*{box-sizing:border-box}:root{--bg: #f2eee6;--bg-deep: #e9e3d6;--surface: #faf8f3;--surface-2: #efeadf;--ink: #1c1915;--ink-soft: #5a5347;--ink-faint: #8b8272;--line: #d9d1c0;--line-strong: #1c1915;--accent: #8a5a32;--accent-deep: #5f3d20;--ok: #3d6b45;--warn: #a05c1f;--err: #9c3a2e;--font-display: "Fraunces", "Georgia", serif;--font-body: "Inter", -apple-system, "Segoe UI", sans-serif;--fs-label: .72rem;--radius: 2px;--radius-lg: 6px;--shadow: 0 10px 40px rgba(28, 25, 21, .08);--ease: cubic-bezier(.22, 1, .36, 1)}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);font-weight:500;letter-spacing:-.01em;color:var(--ink)}::selection{background:var(--ink);color:var(--bg)}:root{--primary-color: var(--accent);--primary-hover: #4338ca;--text-primary: var(--ink);--text-secondary: var(--ink-soft);--border-color: var(--line);--background-light: var(--surface-2);--white: var(--surface);--danger: var(--err);--border-radius-lg: 12px;--border-radius-md: 8px;--shadow-lg: 0 10px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1)}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1rem;font-family:Inter,sans-serif;background-color:var(--surface-2);background-image:linear-gradient(#ffffffeb,#ffffffeb),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cg fill-rule='evenodd'%3E%3Cg fill='%23d1d5db' fill-opacity='0.2'%3E%3Cpath d='M0 38.59l2.83-2.83 1.41 1.41L1.41 40H0v-1.41zM0 1.4l2.83 2.83 1.41-1.41L1.41 0H0v1.41zM38.59 40l-2.83-2.83 1.41-1.41L40 38.59V40h-1.41zM40 1.41l-2.83 2.83-1.41-1.41L38.59 0H40v1.41z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.login-form{background:var(--white);padding:2.5rem 3rem;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:420px;animation:fadeIn .5s ease-out;border:1px solid var(--line)}.login-form .logo-container{text-align:center;margin-bottom:1rem}.logo-container .logo-icon{display:inline-block;background-color:var(--primary-color);color:var(--white);font-size:1.5rem;width:50px;height:50px;line-height:50px;border-radius:50%;font-weight:700}.login-form h1{margin-bottom:.5rem;font-size:1.75rem;text-align:center;font-weight:700;color:var(--text-primary)}.login-form p.subtitle{text-align:center;color:var(--text-secondary);margin-bottom:2rem;font-size:.95rem}.login-form .error{color:var(--danger);margin-bottom:1rem;text-align:center;font-weight:500;background-color:#fee2e2;padding:.75rem;border-radius:var(--border-radius-md);border:1px solid #fecaca}.input-group{position:relative;margin-bottom:1.25rem}.input-group .input-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none}.login-form input{width:100%;padding:.8rem 1rem .8rem 2.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius-md);font-size:1rem;background-color:var(--background-light);transition:border-color .2s ease,box-shadow .2s ease}.login-form input:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px #4f46e526;background-color:var(--white)}.login-form button{width:100%;padding:.85rem;background:var(--primary-color);color:var(--white);border:none;border-radius:var(--border-radius-md);font-size:1rem;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s ease;margin-top:.5rem}.login-form button:hover{background-color:var(--primary-hover)}.login-form button:active{transform:translateY(1px)}@media(max-width:480px){.login-form{padding:2rem 1.5rem}.login-form h1{font-size:1.5rem}}@keyframes fadeIn{0%{opacity:0;transform:scale(.98) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.notification-bell-container{position:relative}.notification-bell-button{position:relative;background:transparent;border:none;cursor:pointer;padding:8px;font-size:24px;display:flex;align-items:center;justify-content:center;transition:transform .2s}.notification-bell-button:hover{transform:scale(1.1)}.bell-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.notification-badge{position:absolute;top:2px;right:2px;background:var(--err);color:#fff;font-size:11px;font-weight:700;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.notification-dropdown{position:absolute;top:100%;right:0;margin-top:8px;width:380px;max-height:500px;background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026;z-index:1000;overflow:hidden;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.notification-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--surface-2);background:linear-gradient(135deg,var(--accent) 0%,#764ba2 100%);color:#fff}.notification-header h3{margin:0;font-size:16px;font-weight:600}.notification-actions{display:flex;gap:8px}.action-btn{padding:0;background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:6px;cursor:pointer;font-size:14px;transition:background .2s}.action-btn:hover{background:#ffffff4d}.notification-list{max-height:380px;overflow-y:auto}.notification-list::-webkit-scrollbar{width:6px}.notification-list::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px}.notification-item{display:flex;align-items:flex-start;padding:12px 16px;border-bottom:1px solid var(--surface-2);cursor:pointer;transition:background .2s;position:relative}.notification-item:hover{background:var(--surface-2)}.notification-item.unread{background:#f0f7ff}.notification-item.priority-high{border-left:3px solid var(--err)}.notification-item.priority-medium{border-left:3px solid var(--warn)}.notification-item.priority-low{border-left:3px solid var(--ok)}.notification-icon{font-size:28px;margin-right:12px;flex-shrink:0}.notification-content{flex:1;min-width:0}.notification-title{font-weight:600;font-size:14px;color:var(--ink);margin-bottom:4px}.notification-message{font-size:13px;color:var(--ink-soft);line-height:1.4;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.notification-time{font-size:11px;color:var(--ink-soft)}.unread-dot{width:8px;height:8px;background:var(--accent);border-radius:50%;flex-shrink:0;margin-left:8px;margin-top:6px}.notification-loading,.notification-empty{padding:40px 20px;text-align:center;color:var(--ink-soft)}.empty-icon{font-size:48px;display:block;margin-bottom:12px;opacity:.5}.notification-empty p{margin:0;font-size:14px}.notification-footer{padding:12px 16px;border-top:1px solid var(--surface-2);background:var(--surface-2)}.notification-footer button{width:100%;padding:8px;background:transparent;border:1px solid var(--line);border-radius:6px;color:var(--accent);font-weight:600;font-size:13px;cursor:pointer;transition:all .2s}.notification-footer button:hover{background:var(--accent);color:#fff;border-color:var(--accent)}@media(max-width:480px){.notification-dropdown{width:calc(100vw - 32px);right:-120px}}.desktop-only{display:flex}.mobile-only{display:none}@media(max-width:1000px){.desktop-only{display:none!important}.mobile-only{display:block!important}}.navbar{display:flex;align-items:center;justify-content:center;background:var(--surface);padding:.8rem 1.5rem;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:200}.navbar__nav{width:100%;max-width:1200px;display:flex;align-items:center;justify-content:space-between}.logo{font-size:1.2rem;font-weight:700;color:var(--ink);margin:0}.navbar__links{display:flex;align-items:center;gap:1rem}.navbar__link{color:var(--ink-soft);font-size:.9rem;font-weight:600;text-decoration:none;padding:6px 8px;border-radius:8px;transition:.15s ease}.navbar__link:hover{color:var(--ink);background:var(--surface-2)}.navbar__logout{background:var(--err);color:#fff;border:none;padding:7px 12px;font-weight:600;border-radius:999px;cursor:pointer;transition:.15s}.navbar__logout:hover{background:var(--err)}.menu-button{font-size:1.8rem;background:transparent;border:none;cursor:pointer;color:var(--ink);padding:6px 10px;border-radius:6px;transition:background .15s ease}.menu-button:hover{background:var(--surface-2)}.floating-menu{position:absolute;top:60px;right:20px;width:260px;background:linear-gradient(145deg,var(--surface),var(--surface-2));border-radius:16px;padding:12px 0;border:1px solid rgba(229,231,235,.6);box-shadow:0 20px 40px #00000026,0 8px 20px #00000014,0 2px 8px #0000000a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:fadeSlide .25s cubic-bezier(.16,1,.3,1);z-index:300;overflow:hidden}@keyframes fadeSlide{0%{opacity:0;transform:translateY(-12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.f-item{display:flex;align-items:center;gap:12px;padding:14px 20px;margin:3px 8px;border-radius:10px;color:var(--ink);text-decoration:none;font-size:.94rem;font-weight:500;cursor:pointer;position:relative;transition:all .2s cubic-bezier(.4,0,.2,1);border:1px solid transparent}.f-item:not(:last-child):after{content:"";position:absolute;bottom:0;left:20px;right:20px;height:1px;background:linear-gradient(to right,transparent,var(--line),transparent);opacity:.5}.f-item:hover{background:linear-gradient(135deg,var(--surface-2),var(--surface-2));border-color:var(--line);transform:translate(4px);box-shadow:0 4px 12px #00000014,0 2px 6px #1c19150f}.f-item.danger{color:var(--err);font-weight:600}.f-item.danger:hover{background:linear-gradient(135deg,var(--surface-2),var(--surface-2));border-color:var(--err);box-shadow:0 4px 12px #00000014,0 2px 6px #dc262626}.logo{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;font-size:1.25rem;font-weight:600}.navbar__link{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.14em;border-radius:var(--radius)}.navbar__link.active{color:var(--ink);border-bottom:1px solid var(--ink);border-radius:0}.navbar__logout{border-radius:var(--radius);text-transform:uppercase;font-size:var(--fs-label);letter-spacing:.12em}body{font-family:Inter,sans-serif;background-color:#f4f4f4;color:var(--ink)}.bw-dashboard-container{padding:1.5rem 2rem}.bw-dashboard-grid{display:grid!important;grid-template-columns:repeat(3,1fr);grid-auto-rows:auto;gap:1.5rem}.bw-grid-card{background-color:var(--surface);border:1px solid var(--line);border-radius:8px;padding:1.5rem;display:flex;flex-direction:column}.bw-card-title{font-size:1.2rem;font-weight:600;margin:0 0 1rem;color:var(--ink)}.today-sales{grid-column:1 / 3;grid-row:1}.top-products{grid-column:3 / 4;grid-row:1 / 3}.customer-fulfilment{grid-column:1 / 3;grid-row:2}.earnings{grid-column:1 / 2;grid-row:3}.visitor-insights{grid-column:2 / 4;grid-row:3}.bw-sales-cards-container{display:flex;justify-content:space-between;gap:1.5rem}.bw-sales-card{display:flex;flex-direction:column;flex-grow:1}.bw-sales-value{font-size:1.75rem;font-weight:700;color:var(--ink)}.bw-sales-title{font-size:.9rem;color:var(--ink-soft);margin:4px 0}.bw-sales-change{font-size:.8rem;color:var(--ink-soft)}.top-products{gap:1rem}.bw-product-table-header{display:grid;grid-template-columns:30px 2fr 1.5fr 1fr;gap:1rem;font-size:.8rem;color:var(--ink-soft);padding:0 .5rem;text-transform:uppercase}.bw-product-list{display:flex;flex-direction:column;gap:.8rem}.bw-product-row{display:grid;grid-template-columns:30px 2fr 1.5fr 1fr;gap:1rem;align-items:center}.bw-product-number{color:var(--ink-soft);font-weight:600}.bw-product-name{color:var(--ink);font-weight:500;font-size:.9rem}.no-data{color:var(--ink-soft);margin-top:1rem}.bw-popularity-bar{width:100%;height:8px;background-color:var(--surface-2);border-radius:4px}.bw-popularity-bar>div{height:100%;background-color:var(--ink);border-radius:4px}.bw-sales-percent-box{background-color:var(--surface-2);color:var(--ink);font-size:.8rem;font-weight:500;padding:.25rem .5rem;border-radius:6px;text-align:center}.bw-chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.bw-view-toggle{display:flex;border:1px solid var(--line);border-radius:6px;overflow:hidden}.bw-toggle-btn{background:transparent;color:var(--ink-soft);border:none;border-left:1px solid var(--line);padding:.4rem .8rem;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease}.bw-toggle-btn:first-child{border-left:none}.bw-toggle-btn.active{background-color:var(--ink);color:var(--surface)}.earnings{justify-content:center;align-items:center;text-align:center}.bw-earnings-total{font-size:2.5rem;font-weight:700;margin:0}.bw-earnings-subtitle{color:var(--ink-soft);font-size:.9rem;margin-top:.5rem}.bw-dashboard-loading,.bw-dashboard-error{text-align:center;padding:4rem;font-size:1.2rem;color:var(--ink-soft);width:100vw}.bw-dashboard-error{color:var(--err)}@media(max-width:1200px){.bw-dashboard-grid{grid-template-columns:1fr 1fr}.today-sales,.customer-fulfilment,.visitor-insights{grid-column:1 / 3}.top-products{grid-column:1 / 2;grid-row:2}.earnings{grid-column:2 / 3;grid-row:2}}@media(max-width:768px){.bw-dashboard-container{padding:1rem}.bw-dashboard-grid{grid-template-columns:1fr}.today-sales,.top-products,.customer-fulfilment,.earnings,.visitor-insights{grid-column:1;grid-row:auto}.bw-sales-cards-container{flex-direction:column;gap:1rem}}.banner-page{min-height:100vh;padding:3rem 2rem;background:linear-gradient(135deg,#e0f2fe,var(--surface-2));font-family:var(--font-body);display:flex;flex-direction:column;align-items:center}.banner-page h2{font-size:2.25rem;font-weight:700;color:var(--ink);margin-bottom:2.5rem;border-left:6px solid var(--accent);padding-left:1rem;letter-spacing:.3px}.banner-form{background:#fff9;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-radius:18px;border:1px solid rgba(209,213,219,.4);padding:2.5rem;max-width:900px;width:100%;box-shadow:0 20px 60px #0000000d;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;transition:all .3s ease}.banner-form label{font-size:.9rem;font-weight:500;color:#334155;display:flex;flex-direction:column;gap:.5rem}.banner-form input[type=text],.banner-form input[type=file]{padding:12px 16px;border:1px solid var(--line);border-radius:12px;font-size:1rem;background-color:#ffffffd9;transition:all .3s ease}.banner-form input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #3b82f626}.banner-form button{grid-column:span 2;justify-self:end;margin-top:1rem;padding:12px 28px;background:linear-gradient(to right,#60a5fa,var(--accent));color:#fff;border:none;border-radius:14px;font-size:1rem;font-weight:600;cursor:pointer;transition:box-shadow .3s ease,transform .2s ease}.banner-form button:hover{box-shadow:0 8px 24px #3b82f640;transform:translateY(-2px)}.banner-list-title{font-size:1.8rem;font-weight:700;color:var(--ink);margin:3rem 0 1.5rem;border-left:6px solid var(--accent);padding-left:1rem;display:flex;align-items:center;gap:.5rem}.banner-list{margin-top:1.5rem;width:100%;max-width:1200px;margin-left:auto;margin-right:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:2rem}.banner-item{background:#ffffffb3;border-radius:16px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:1.5rem;text-align:center;box-shadow:0 6px 20px #0000000d;border:1px solid rgba(203,213,225,.4);transition:transform .2s ease}.banner-item:hover{transform:translateY(-4px)}.banner-item img{width:100%;border-radius:12px;margin-bottom:1rem;aspect-ratio:16/9;height:auto;object-fit:cover}@media(max-width:1024px){.banner-page{padding:2rem 1.5rem}.banner-page h2{font-size:1.9rem;margin-bottom:1.75rem}.banner-form{padding:2rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.banner-form button{grid-column:span 2;justify-self:end}.banner-item img{aspect-ratio:4/3}}@media(max-width:640px){.banner-page{padding:1rem .75rem}.banner-page h2{font-size:1.4rem;border-left-width:4px;padding-left:.75rem;margin-bottom:1rem}.banner-form{padding:1rem;grid-template-columns:1fr;gap:1rem}.banner-form button{grid-column:auto;justify-self:stretch;width:100%;padding:12px 16px}.banner-form label{font-size:.9rem}.banner-item{padding:1rem}.banner-item img{aspect-ratio:16/9;height:180px}.banner-list{gap:1rem;grid-template-columns:1fr;width:100%}}@media(max-width:400px){.banner-page{padding:.75rem .5rem}.banner-page h2{font-size:1.25rem;border-left-width:3px;padding-left:.5rem;margin-bottom:.75rem}.banner-form{padding:.75rem;margin:0 .25rem;border-radius:12px;gap:.75rem}.banner-form input[type=text],.banner-form input[type=file]{padding:10px 12px;font-size:.9rem;border-radius:8px;width:100%;box-sizing:border-box;min-width:0}.banner-form label{font-size:.85rem;gap:.375rem}.banner-form button{padding:10px 14px;font-size:.9rem;border-radius:8px;margin-top:.5rem}.banner-list-title{font-size:1.4rem;margin:2rem 0 1rem;border-left-width:3px;padding-left:.5rem}.banner-item{padding:.75rem;border-radius:12px}.banner-item img{height:160px;border-radius:8px}.banner-item p{font-size:.85rem}.banner-item button{padding:6px 12px;font-size:.8rem;border-radius:6px}}.banner-item p{font-size:.92rem;color:#475569;margin:.3rem 0}.banner-item a{color:var(--accent);text-decoration:none;font-weight:500}.banner-item a:hover{text-decoration:underline}.banner-item button{margin-top:.8rem;background-color:var(--err);color:#fff;padding:8px 16px;font-size:.85rem;border:none;border-radius:10px;cursor:pointer;transition:background .3s ease}.banner-item button:hover{background-color:var(--err)}*{margin:0}.product-page{min-height:100vh;padding:1.5rem 2rem;background-color:var(--surface-2);font-family:var(--font-body);display:flex;flex-direction:column;align-items:center}.product-heading{font-size:2.25rem;font-weight:700;color:#1a202c;margin-bottom:2rem;text-align:center;width:100%;max-width:1200px}.product-controls{width:100%;max-width:1200px;display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem;gap:1rem}.product-search{flex-grow:1;max-width:400px;padding:12px 18px;border-radius:10px;border:1px solid var(--line);font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease}.product-search:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e133}.product-grid{width:100%;max-width:1200px;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;justify-content:flex-start}@keyframes card-enter{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes stock-glow{0%,to{box-shadow:0 0 2px #48bb78b3}50%{box-shadow:0 0 6px 2px #48bb78e6}}.product-card{background:var(--surface);border-radius:16px;box-shadow:0 8px 16px #0000000d;display:flex;flex-direction:column;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;animation:card-enter .5s ease-out forwards}.product-card:hover{transform:translateY(-5px);box-shadow:0 12px 24px #00000014}.product-image-wrapper{height:180px;background-color:var(--surface-2);display:flex;align-items:center;justify-content:center}.product-image{width:100%;height:100%;object-fit:cover;padding:.5rem}.product-image-placeholder{color:#a0aec0;font-style:italic;font-size:.9rem}.product-content{padding:1rem;display:flex;flex-direction:column;flex-grow:1}.product-info{background:var(--surface)!important;padding:.5rem!important;border-radius:8px!important;margin-bottom:0rem!important;flex-grow:1}.product-name{font-size:1.2rem!important;font-weight:600;color:var(--ink);margin:0 0 .25rem}.product-category{font-size:.75rem;font-weight:500;color:#718096;text-transform:uppercase;letter-spacing:.5px;margin:0 0 .75rem}.product-price{font-size:1rem;font-weight:700;color:var(--ink);margin:0 0 .75rem}.product-stock{display:flex;align-items:center;font-size:.85rem;font-weight:500;color:var(--ink-soft)}.stock-dot{width:8px;height:8px;border-radius:50%;margin-right:.5rem}.stock-dot.in-stock{background-color:#48bb78;animation:stock-glow 2.5s infinite ease-in-out}.stock-dot.out-of-stock{background-color:var(--err)}.product-actions{margin-top:1rem;display:flex;flex-wrap:wrap;gap:.5rem}.btn{padding:8px 12px;font-size:.85rem;font-weight:600;border-radius:8px;border:1px solid transparent;cursor:pointer;transition:all .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000014}.btn-add-product{background:#3182ce;color:#fff;border-color:#3182ce}.btn-add-product:hover{background:#2b6cb0}.btn-edit,.btn-delete{width:7.55rem}.btn-edit{background-color:var(--ink);color:#fff}.btn-edit:hover{background-color:#1a202c}.btn-delete{background-color:var(--surface-2);color:var(--err);border:1px solid var(--line);gap:.5rem}.btn-delete:hover{background-color:#fff5f5;border-color:#fed7d7;color:var(--err)}.btn-details{background-color:var(--surface-2);color:var(--ink);border:1px solid var(--line);width:100%}.btn-details:hover{background-color:#edf2f7}@media(max-width:1200px){.product-page{padding:1.25rem 1.5rem}.product-heading{font-size:1.5rem;margin-bottom:1.75rem}.product-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.25rem}.product-controls{margin-bottom:2rem}}@media(max-width:1024px){.product-page{padding:1rem 1.25rem}.product-heading{font-size:1.8rem;margin-bottom:1.5rem}.product-controls{flex-direction:column;align-items:stretch;gap:1rem;margin-bottom:1.75rem}.product-search{max-width:none;order:-1}.btn-add-product{align-self:center;min-width:200px}.product-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.product-image-wrapper{height:160px}.product-content{padding:.875rem}.product-name{font-size:1rem}.product-price{font-size:.95rem}}@media(max-width:768px){.product-page{padding:.875rem 1rem}.product-heading{font-size:1.6rem;margin-bottom:1.25rem}.product-controls{margin-bottom:1.5rem}.product-search{padding:10px 16px;font-size:.9rem}.btn-add-product{padding:12px 20px;font-size:.9rem;min-width:180px}.product-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.875rem}.product-image-wrapper{height:140px}.product-content{padding:.75rem}.product-info{padding:.4rem!important}.product-name{font-size:.95rem}.product-category{font-size:.7rem;margin-bottom:.5rem}.product-price{font-size:.9rem;margin-bottom:.5rem}.product-stock{font-size:.8rem}.product-actions{margin-top:.75rem;gap:.4rem}.btn{padding:7px 10px;font-size:.8rem}.btn-edit,.btn-delete{width:6.8rem}}@media(max-width:640px){.product-page{padding:.75rem .875rem}.product-heading{font-size:1.4rem;margin-bottom:1rem}.product-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}.product-card{border-radius:12px}.product-image-wrapper{height:120px}.product-content{padding:.6rem}.product-info{padding:.3rem!important;margin-bottom:0}.product-name{font-size:.9rem;margin-bottom:.2rem}.product-category{font-size:.65rem;margin-bottom:.4rem}.product-price{font-size:.85rem;margin-bottom:.4rem}.product-stock{font-size:.75rem}.product-actions{margin-top:.6rem;gap:.3rem}.btn{padding:6px 8px;font-size:.75rem;border-radius:6px}.btn-edit,.btn-delete{width:5.8rem}.btn-add-product{min-width:160px;padding:10px 16px}}@media(max-width:480px){.product-page{padding:.6rem .75rem}.product-heading{font-size:1.25rem;margin-bottom:.875rem}.product-controls{margin-bottom:1.25rem;gap:.75rem}.product-search{padding:9px 14px;font-size:.85rem;border-radius:8px}.btn-add-product{min-width:140px;padding:9px 14px;font-size:.85rem}.product-grid{grid-template-columns:1fr 1fr;gap:.6rem}.product-card{border-radius:10px}.product-image-wrapper{height:100px}.product-content{padding:.5rem}.product-info{padding:.25rem!important}.product-name{font-size:.85rem;margin-bottom:.15rem;line-height:1.3}.product-category{font-size:.6rem;margin-bottom:.3rem}.product-price{font-size:.8rem;margin-bottom:.3rem}.product-stock{font-size:.7rem}.product-actions{margin-top:.5rem;gap:.25rem}.btn{padding:5px 6px;font-size:.7rem;border-radius:5px}.btn-edit,.btn-delete{width:4.8rem}.btn-details{font-size:.68rem;padding:5px 4px}}@media(max-width:410px){.product-page{padding:.5rem .6rem}.product-heading{font-size:1.1rem;margin-bottom:.75rem}.product-controls{margin-bottom:1rem;gap:.6rem}.product-search{padding:8px 12px;font-size:.8rem;border-radius:6px}.btn-add-product{min-width:120px;padding:8px 12px;font-size:.8rem}.product-grid{grid-template-columns:1fr;gap:.5rem;max-width:300px;margin:0 auto}.product-card{border-radius:8px;max-width:100%}.product-image-wrapper{height:140px}.product-content{padding:.5rem}.product-info{padding:.25rem!important}.product-name{font-size:.9rem;margin-bottom:.2rem;line-height:1.2}.product-category{font-size:.65rem;margin-bottom:.4rem}.product-price{font-size:.85rem;margin-bottom:.4rem}.product-stock{font-size:.75rem}.product-actions{margin-top:.5rem;gap:.3rem;flex-direction:column}.btn{padding:8px 12px;font-size:.75rem;border-radius:6px;width:100%;justify-content:center}.btn-edit,.btn-delete{width:100%}.btn-details{font-size:.75rem;padding:8px 12px}.product-actions{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:.3rem}.btn-details{grid-column:1 / -1}}@media(max-width:768px)and (orientation:landscape){.product-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.product-image-wrapper{height:100px}.product-name{font-size:.8rem}.product-price{font-size:.75rem}.btn{padding:4px 6px;font-size:.65rem}}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .3s ease}.modal-content{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 5px 15px #0003;width:100%;max-width:450px;margin:1rem;text-align:center;animation:slideIn .3s ease-out}.modal-title{font-size:1.5rem;font-weight:600;margin-top:0;margin-bottom:1rem;color:var(--ink)}.modal-body{font-size:1rem;color:var(--ink-soft);margin-bottom:2rem;line-height:1.6}.modal-actions{display:flex;justify-content:center;gap:1rem}.modal-btn{padding:12px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease}.modal-btn.cancel{background-color:var(--line);color:var(--ink)}.modal-btn.cancel:hover{background-color:var(--line)}.modal-btn.confirm{background-color:var(--err);color:#fff}.modal-btn.confirm:hover{background-color:var(--err)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:480px){.modal-content{padding:1.5rem 1.25rem}.modal-actions{flex-direction:column}.modal-btn{width:100%}}.add-product-page{min-height:100vh;padding:2rem;background:linear-gradient(to bottom right,#e0f2fe,var(--surface-2));display:flex;justify-content:center;align-items:flex-start;font-family:var(--font-body)}.add-product-card{padding:2rem;max-width:720px;width:100%;margin:auto;background:#ffffffbf;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;box-shadow:0 20px 60px #0000000d;border:1px solid rgba(203,213,225,.4)}.card-header{margin-bottom:1.5rem;position:relative;text-align:center}.back-btn{position:absolute;top:5px;left:0;background:none;border:none;font-size:.9rem;font-weight:500;color:var(--accent);cursor:pointer;padding:5px;transition:color .2s ease}.back-btn:hover{color:var(--accent)}.heading{font-size:1.8rem;font-weight:700;color:var(--ink)}.add-product-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:span 2}.form-group.text-center{text-align:center}.form-group label{font-size:.95rem;font-weight:500;color:var(--ink);display:block;margin:0!important}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 14px;border-radius:10px;border:1px solid var(--line);font-size:.95rem;background-color:var(--surface-2);transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.form-group textarea{resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #3b82f633}.form-group .checkbox-label{display:flex;align-items:center;cursor:pointer;padding:12px 16px;background-color:var(--surface-2);border:2px solid var(--line);border-radius:10px;transition:all .2s ease;margin:0!important}.form-group .checkbox-label:hover{background-color:var(--surface-2);border-color:var(--accent)}.form-group .checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;margin:0;accent-color:var(--accent)}.form-group .checkbox-label span{font-size:.95rem;font-weight:500;color:var(--ink);-webkit-user-select:none;user-select:none}.image-grid{display:flex;flex-direction:column;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem}.file-input-container{display:flex;align-items:center;border:1px solid var(--line);border-radius:10px;background-color:var(--surface-2)}.file-input-label{padding:10px 15px;background:#c0bebe;border-right:1px solid var(--line);color:var(--accent);font-weight:500;cursor:pointer;transition:background-color .2s ease;white-space:nowrap;border-top-left-radius:9px;border-bottom-left-radius:9px}.file-input-label:hover{background-color:#716f6f}.file-input-hidden{display:none}.file-name-display{padding-left:12px;font-size:.9rem;color:#000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-grow:1}.submit-btn{padding:14px 28px;background:linear-gradient(to right,var(--accent),var(--accent));color:var(--surface);border:none;border-radius:14px;font-weight:600;font-size:1rem;cursor:pointer;transition:transform .2s ease,box-shadow .3s ease;box-shadow:0 6px 18px #3b82f659}.submit-btn:hover{transform:scale(1.03);box-shadow:0 8px 25px #3b82f666}.error-message{color:var(--err);background-color:#f8d7da;border:1px solid #f5c6cb;padding:.75rem 1rem;border-radius:8px;margin-top:1rem;text-align:center;font-size:.95rem}@media(max-width:768px){.add-product-page{padding:1.25rem 1rem}.add-product-card{padding:1.5rem;border-radius:16px}.heading{font-size:1.5rem}}@media(max-width:600px){.form-row{grid-template-columns:1fr;gap:1rem}.form-group.full-width{grid-column:auto}}@media(max-width:480px){.add-product-page{padding:1rem .75rem}.add-product-card{padding:1.25rem 1rem}.back-btn{position:static;display:inline-block;margin-bottom:.5rem}.card-header{text-align:left}.submit-btn{padding:12px 20px}}:root{--primary-color: var(--accent);--primary-hover: #4338ca;--primary-light: #e0e7ff;--success-color: #22c55e;--success-light: #dcfce7;--danger-color: var(--err);--danger-hover: var(--err);--danger-light: #fee2e2;--warning-color: var(--warn);--warning-light: #fef3c7;--background-color: var(--surface-2);--card-background: var(--surface);--border-color: var(--line);--text-primary: var(--ink);--text-secondary: var(--ink-soft);--text-muted: #9ca3af;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--border-radius: 8px;--border-radius-lg: 12px}.coupon-table-section{background:var(--card-background);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);padding:1.5rem;margin-bottom:2rem;border:1px solid var(--border-color)}.coupon-table-heading{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem;font-family:Inter,sans-serif}.coupon-table-controls{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap;align-items:center;justify-content:space-between}.coupon-search{flex:1;min-width:250px;max-width:400px}.coupon-search input{width:100%;padding:.75rem 1rem .75rem 2.5rem;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:.9rem;background:url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"></circle><path d="m21 21-4.35-4.35"></path></svg>') no-repeat .75rem center;background-size:1rem;transition:border-color .2s,box-shadow .2s}.coupon-search input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4f46e526}.coupon-filters{display:flex;gap:.75rem;flex-wrap:wrap}.filter-select{padding:.6rem .8rem;border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:.85rem;background:var(--card-background);color:var(--text-primary);cursor:pointer;transition:border-color .2s}.filter-select:focus{outline:none;border-color:var(--primary-color)}.coupon-table-wrapper{background:var(--card-background);border-radius:var(--border-radius);overflow:hidden;border:1px solid var(--border-color)}.coupon-table{width:100%;border-collapse:separate;border-spacing:0;font-family:Inter,sans-serif}.coupon-table thead{background:linear-gradient(135deg,var(--background-color),var(--surface-2))}.coupon-table th{padding:1rem .75rem;text-align:left;font-weight:600;font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color);white-space:nowrap}.coupon-table tbody tr{background:var(--card-background);transition:all .2s ease;border-bottom:1px solid var(--border-color)}.coupon-table tbody tr:hover{background:var(--background-color);transform:translate(2px)}.coupon-table tbody tr:last-child{border-bottom:none}.coupon-table td{padding:1rem .75rem;font-size:.85rem;color:var(--text-primary);vertical-align:middle;border-bottom:1px solid transparent}.coupon-cards{display:none;gap:1rem;flex-direction:column}.coupon-card{background:var(--card-background);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm);transition:all .2s ease;position:relative}.coupon-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.coupon-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.coupon-card-code{font-weight:700;font-size:1.1rem;color:var(--primary-color);background:var(--primary-light);padding:.375rem .75rem;border-radius:var(--border-radius);font-family:Monaco,Menlo,monospace}.coupon-card-status{display:flex;gap:.5rem}.status-badge{padding:.25rem .6rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em}.status-visible{background:var(--success-light);color:var(--success-color)}.status-hidden{background:var(--warning-light);color:var(--warning-color)}.status-assigned{background:var(--primary-light);color:var(--primary-color)}.status-expired{background:var(--danger-light);color:var(--danger-color)}.coupon-code{background:var(--primary-light);color:var(--primary-color);padding:.25rem .5rem;border-radius:4px;font-family:Monaco,Menlo,monospace;font-weight:600;font-size:.8rem}.description-cell{max-width:200px}.description-cell span{cursor:help}.status-cell{display:flex;flex-direction:column;gap:.25rem}.action-buttons{display:flex;gap:.5rem;justify-content:center;align-items:center}.expired-row{opacity:.7;background:#fef2f2}.expired-row:hover{background:#fee2e2}.text-danger{color:var(--danger-color);font-weight:600}.coupon-card.expired{opacity:.8;border-color:var(--danger-color);background:#fef2f2}.coupon-card-content{display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1rem;margin-bottom:1rem}.coupon-card-field{display:flex;flex-direction:column;gap:.25rem}.coupon-card-field label{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.coupon-card-field span{font-size:.85rem;color:var(--text-primary);font-weight:500}.coupon-card-field.full-width{grid-column:1 / -1}.coupon-card-description{color:var(--text-secondary);line-height:1.5;font-style:italic}.coupon-card-actions{display:flex;gap:.5rem;padding-top:1rem;border-top:1px solid var(--border-color)}.edit-btn,.delete-btn{padding:.5rem 1rem;border-radius:var(--border-radius);font-weight:600;font-size:.8rem;cursor:pointer;border:none;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.375rem;white-space:nowrap;min-width:80px}.edit-btn{background:var(--primary-color);color:#fff;border:1px solid var(--primary-color)}.edit-btn:hover{background:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.delete-btn{background:var(--danger-color);color:#fff;border:1px solid var(--danger-color)}.delete-btn:hover{background:var(--danger-hover);border-color:var(--danger-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.coupon-card .edit-btn,.coupon-card .delete-btn{flex:1;justify-content:center}.no-coupons{text-align:center;padding:3rem 2rem;color:var(--text-secondary)}.no-coupons-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.no-coupons h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.no-coupons p{font-size:.9rem;line-height:1.5}@media(max-width:1200px){.coupon-table-section{padding:1.25rem}.coupon-table th,.coupon-table td{padding:.75rem .6rem;font-size:.8rem}.coupon-table th{font-size:.75rem}}@media(max-width:1024px){.coupon-table-controls{flex-direction:column;align-items:stretch;gap:1rem}.coupon-search{min-width:auto;max-width:none}.coupon-filters{justify-content:center}.coupon-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.coupon-table{min-width:900px}.coupon-table th,.coupon-table td{padding:.65rem .5rem;font-size:.75rem}}@media(max-width:768px){.coupon-table-section{padding:1rem}.coupon-table-heading{font-size:1.25rem;margin-bottom:1rem}.coupon-table-controls{gap:.75rem}.coupon-search input{padding:.65rem 1rem .65rem 2.25rem;font-size:.85rem}.filter-select{padding:.55rem .7rem;font-size:.8rem}.coupon-table-wrapper{display:none}.coupon-cards{display:flex}.coupon-card{padding:1rem}.coupon-card-content{grid-template-columns:1fr;gap:.6rem}.coupon-card-field{gap:.2rem}.coupon-card-actions{gap:.4rem;padding-top:.8rem}}@media(max-width:640px){.coupon-table-section{padding:.875rem;margin:0 .25rem}.coupon-table-heading{font-size:1.1rem;gap:.5rem}.coupon-filters{flex-direction:column;gap:.5rem}.filter-select{width:100%}.coupon-card{padding:.875rem}.coupon-card-header{flex-direction:column;align-items:stretch;gap:.75rem}.coupon-card-code{font-size:1rem;text-align:center}.coupon-card-status{justify-content:center}.coupon-card-actions{flex-direction:column;gap:.5rem}}@media(max-width:480px){.coupon-table-section{padding:.75rem;margin:0 .125rem;border-radius:var(--border-radius)}.coupon-table-heading{font-size:1rem;margin-bottom:.875rem}.coupon-search input{padding:.6rem 1rem .6rem 2rem;font-size:.8rem;background-size:.9rem;background-position:.6rem center}.coupon-card{padding:.75rem;border-radius:var(--border-radius)}.coupon-card-code{font-size:.9rem;padding:.3rem .6rem}.status-badge{padding:.2rem .5rem;font-size:.7rem}.coupon-card-field label{font-size:.65rem}.coupon-card-field span{font-size:.8rem}.edit-btn,.delete-btn{padding:.6rem;font-size:.75rem}.no-coupons{padding:2rem 1rem}.no-coupons-icon{font-size:2.5rem}.no-coupons h3{font-size:1.1rem}.no-coupons p{font-size:.85rem}}@media(max-width:410px){.coupon-table-section{padding:.6rem;margin:0}.coupon-table-heading{font-size:.95rem;margin-bottom:.75rem}.coupon-search input{padding:.55rem .8rem .55rem 1.8rem;font-size:.75rem;background-size:.8rem;background-position:.5rem center}.coupon-card{padding:.65rem;border-radius:6px}.coupon-card-header{margin-bottom:.75rem;gap:.6rem}.coupon-card-code{font-size:.85rem;padding:.25rem .5rem}.coupon-card-content{gap:.5rem;margin-bottom:.75rem}.coupon-card-actions{padding-top:.6rem;gap:.4rem}.edit-btn,.delete-btn{padding:.5rem;font-size:.7rem}}:root{--primary-color: var(--accent);--primary-hover: #4338ca;--primary-light: #e0e7ff;--danger-color: var(--err);--danger-hover: var(--err);--success-color: #22c55e;--background-color: var(--surface-2);--form-background: var(--surface);--border-color: var(--line);--text-primary: var(--ink);--text-secondary: var(--ink-soft);--border-radius-lg: 10px;--border-radius-md: 6px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1)}body{background-color:var(--background-color);font-family:Inter,sans-serif;color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.navbar{background-color:var(--form-background);padding:0 2rem;box-shadow:var(--shadow-md);height:64px;display:flex;align-items:center}.navbar__nav{width:100%;display:flex;align-items:center;gap:1.5rem}.logo{font-weight:700;font-size:1.5rem;color:var(--text-primary);margin-right:2rem}.navbar__link,.navbar__dropdown-toggle{text-decoration:none;color:var(--text-secondary);font-weight:600;font-size:.95rem;padding:8px 12px;border-radius:var(--border-radius-md);transition:color .2s,background-color .2s;background:none;border:none;cursor:pointer;font-family:Inter,sans-serif}.navbar__link:hover,.navbar__dropdown-toggle:hover{background-color:var(--background-color);color:var(--text-primary)}.navbar__link--active{background-color:var(--primary-light);color:var(--primary-color)}.navbar__logout{margin-left:auto;background-color:var(--danger-color);color:#fff;border:none;padding:8px 16px;border-radius:var(--border-radius-md);font-weight:600;cursor:pointer;transition:background-color .2s}.navbar__logout:hover{background-color:var(--danger-hover)}.navbar__dropdown-container{position:relative}.navbar__dropdown-container:after{content:"";position:absolute;left:0;right:0;top:100%;height:.5rem;background:transparent}.navbar__dropdown-menu{position:absolute;top:100%;left:0;background-color:var(--form-background);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);padding:.5rem 0;margin-top:.5rem;z-index:100;width:220px;border:1px solid var(--border-color);opacity:0;visibility:hidden;transform:translateY(-10px);transition:opacity .2s ease,transform .2s ease,visibility .2s}.navbar__dropdown-container:hover .navbar__dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.navbar__dropdown-menu a{display:block;padding:.75rem 1.25rem;color:var(--text-primary);text-decoration:none;font-size:.9rem;cursor:pointer}.navbar__dropdown-menu a:hover{background-color:var(--background-color)}.coupon-page{padding:1.5rem;max-width:1500px;margin:0 auto}.coupon-container{display:flex;justify-content:center;width:100%}.coupon-form-section{width:100%;max-width:600px}.coupon-table-section{width:100%;max-width:1200px}.coupon-heading,.coupon-table-heading{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;color:var(--text-primary);display:flex;align-items:center;gap:.75rem}.coupon-form-section{background:var(--form-background);padding:2rem;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg)}.expiry-group-container{display:flex;gap:.75rem}.expiry-group-container .form-group{flex:1}.form-group{margin-bottom:1.25rem}.special-field{background-color:var(--primary-light);padding:1rem;border-radius:var(--border-radius-md);border:1px solid var(--primary-color);margin:1.5rem -1rem}.special-field label{font-weight:700;color:var(--primary-hover)}.form-group label{display:flex;flex-direction:column;gap:.75rem;font-weight:600;font-size:.875rem;color:var(--text-primary)}.coupon-input{width:100%;padding:.65rem .9rem;border:1px solid var(--border-color);border-radius:var(--border-radius-md);font-size:.95rem;background-color:var(--surface-2);transition:border-color .2s,box-shadow .2s}.coupon-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #4f46e526;background-color:var(--form-background)}.code-input-wrapper{display:flex;gap:.5rem}.code-input{flex-grow:1}.generate-btn{padding:0 1rem;background-color:var(--text-secondary);color:var(--form-background);border:none;border-radius:var(--border-radius-md);font-weight:600;cursor:pointer;transition:background-color .2s}.generate-btn:hover{background-color:var(--text-primary)}.checkbox-group{display:flex;align-items:center;gap:.75rem;background-color:var(--surface-2);padding:.8rem;border-radius:var(--border-radius-md);border:1px solid var(--border-color)}.checkbox-group input[type=checkbox]{height:1.1rem;width:1.1rem;accent-color:var(--primary-color);cursor:pointer}.checkbox-group label{margin-bottom:0;cursor:pointer}.form-group small{font-size:.8rem;color:var(--text-secondary);margin-top:.4rem;display:block;line-height:1.4}.form-actions{margin-top:2rem;display:flex;gap:.75rem}.coupon-submit-btn,.cancel-btn{flex-grow:1;padding:.8rem 1rem;border:none;border-radius:var(--border-radius-md);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s ease-in-out;box-shadow:var(--shadow-sm)}.coupon-submit-btn:active,.cancel-btn:active{transform:translateY(2px);box-shadow:none}.coupon-submit-btn{background:linear-gradient(to right,var(--accent),var(--accent));color:var(--form-background)}.coupon-submit-btn:hover{box-shadow:var(--shadow-md);filter:brightness(1.1)}.cancel-btn{background-color:var(--line);color:var(--text-primary)}.cancel-btn:hover{background-color:var(--border-color)}.coupon-table-section{background:var(--form-background);padding:1.25rem;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);overflow-x:auto}.coupon-table-wrapper{width:100%}.coupon-table{width:100%;border-collapse:separate;border-spacing:0 .4rem;text-align:left}.coupon-table thead{background-color:var(--background-color)}.coupon-table th,.coupon-table td{padding:.8rem 1rem;vertical-align:middle}.coupon-table th{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--text-secondary)}.coupon-table th:first-child,.coupon-table td:first-child{border-top-left-radius:var(--border-radius-md);border-bottom-left-radius:var(--border-radius-md)}.coupon-table th:last-child,.coupon-table td:last-child{border-top-right-radius:var(--border-radius-md);border-bottom-right-radius:var(--border-radius-md)}.coupon-table tbody tr{background-color:var(--form-background);box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease;border-radius:var(--border-radius-md)}.coupon-table tbody tr:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.coupon-table td{font-size:.875rem;border-bottom:1px solid var(--background-color)}.no-coupon-row{text-align:center;font-weight:500;color:var(--text-secondary);padding:3rem}.edit-btn,.delete-btn{padding:.4rem .8rem;border-radius:var(--border-radius-md);font-weight:600;font-size:.8rem;cursor:pointer;width:5rem;border:none;transition:filter .2s}.edit-btn{background-color:var(--primary-light);color:var(--primary-hover)}.edit-btn:hover{filter:brightness(.95)}.delete-btn{background-color:#fee2e2;color:var(--danger-hover);margin:0!important}.delete-btn:hover{filter:brightness(.95)}@media(max-width:1200px){.coupon-container{grid-template-columns:1fr}.coupon-form-section{position:static;max-width:700px;margin:0 auto}.coupon-table-section{max-width:1000px;margin:0 auto}}@media(max-width:1024px){.coupon-page{padding:1.25rem}.coupon-form-section{padding:1.75rem;max-width:650px}.coupon-table-section{padding:1.5rem}.navbar{padding:0 1.5rem}.navbar__dropdown-menu{width:200px}}@media(max-width:768px){.coupon-page{padding:1rem}.coupon-form-section{padding:1.5rem;max-width:100%;margin:0}.coupon-table-section{padding:1.25rem}.coupon-heading,.coupon-table-heading{font-size:1.25rem;margin-bottom:1.25rem}.form-group label{gap:.65rem;font-size:.85rem}.coupon-input,.generate-btn{padding:.6rem .85rem;font-size:.9rem}.form-actions{gap:.65rem}.coupon-submit-btn,.cancel-btn{padding:.75rem;font-size:.95rem}.navbar{padding:0 1.25rem;height:60px}.logo{font-size:1.35rem}}@media(max-width:640px){.coupon-page{padding:.75rem}.coupon-form-section{padding:1.25rem;border-radius:10px}.coupon-table-section{padding:1rem;border-radius:10px}.coupon-heading,.coupon-table-heading{font-size:1.15rem;margin-bottom:1rem;gap:.6rem}.form-group{margin-bottom:1.15rem}.form-group label{gap:.6rem;font-size:.83rem}.coupon-input{padding:.55rem .8rem;font-size:.88rem;border-radius:8px}.code-input-wrapper{gap:.4rem}.generate-btn{padding:.55rem .8rem;font-size:.85rem;border-radius:8px}.expiry-group-container{gap:1rem}.checkbox-group{padding:.7rem;gap:.6rem}.form-actions{margin-top:1.75rem;gap:.6rem}.coupon-submit-btn,.cancel-btn{padding:.7rem;font-size:.9rem;border-radius:8px}.coupon-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:8px}.coupon-table{min-width:650px}.coupon-table th,.coupon-table td{padding:.6rem .8rem;font-size:.8rem}.edit-btn,.delete-btn{padding:.35rem .7rem;font-size:.75rem;width:4.5rem}.navbar{padding:0 1rem;height:58px}.navbar__nav{gap:1.2rem}.logo{font-size:1.3rem;margin-right:1.5rem}.navbar__link,.navbar__dropdown-toggle{padding:7px 10px;font-size:.88rem}.navbar__logout{padding:7px 14px;font-size:.88rem}.navbar__dropdown-menu{width:190px}}@media(max-width:480px){.coupon-page{padding:.6rem}.coupon-form-section{padding:1rem;margin:0 .1rem;border-radius:8px}.coupon-heading{font-size:1.05rem;margin-bottom:.9rem;gap:.45rem}.form-group{margin-bottom:1rem}.form-group label{gap:.55rem;font-size:.81rem}.coupon-input{padding:.5rem .75rem;font-size:.86rem;border-radius:7px;width:100%;box-sizing:border-box;min-width:0}.code-input-wrapper{gap:.35rem;flex-wrap:nowrap}.generate-btn{padding:.5rem .75rem;font-size:.82rem;white-space:nowrap;min-width:fit-content;border-radius:7px}.expiry-group-container{gap:.9rem}.checkbox-group{padding:.65rem;gap:.5rem}.checkbox-group input[type=checkbox]{height:1.05rem;width:1.05rem}.form-group small{font-size:.77rem;margin-top:.3rem;line-height:1.35}.special-field{margin:1rem -.4rem;padding:.8rem;border-radius:7px}.form-actions{margin-top:1.4rem;gap:.5rem}.coupon-submit-btn,.cancel-btn{padding:.7rem;font-size:.88rem;border-radius:7px}}@media(max-width:410px){.coupon-page{padding:.5rem .4rem}.coupon-form-section{padding:.9rem;margin:0 .1rem;border-radius:8px}.coupon-heading{font-size:1rem;margin-bottom:.8rem;gap:.4rem;line-height:1.3}.form-group{margin-bottom:.9rem}.form-group label{font-size:.79rem;gap:.5rem;line-height:1.3}.coupon-input{padding:.45rem .7rem;font-size:.84rem;border-radius:6px;width:100%;box-sizing:border-box;min-width:0}.code-input-wrapper{gap:.3rem;flex-wrap:wrap}.code-input{flex-grow:1;min-width:0;flex-basis:100%;margin-bottom:.5rem}.generate-btn{padding:.45rem .7rem;font-size:.8rem;white-space:nowrap;min-width:fit-content;border-radius:6px;width:100%}.expiry-group-container{flex-direction:column;gap:.8rem}.expiry-group-container .form-group{flex:none;margin-bottom:0}.checkbox-group{padding:.6rem;gap:.45rem;flex-wrap:wrap;align-items:flex-start}.checkbox-group input[type=checkbox]{height:1rem;width:1rem;margin-top:.1rem}.checkbox-group label{line-height:1.4;gap:0}.form-group small{font-size:.75rem;margin-top:.25rem;line-height:1.3}.special-field{margin:.8rem -.3rem;padding:.7rem;border-radius:6px}.form-actions{margin-top:1.3rem;flex-direction:column;gap:.45rem}.coupon-submit-btn,.cancel-btn{flex-grow:none;width:100%;padding:.65rem;font-size:.86rem;border-radius:6px}.coupon-table-section{padding:.7rem;margin:0 .1rem;border-radius:8px}.coupon-table-heading{font-size:.95rem;margin-bottom:.7rem;gap:.4rem}.coupon-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:6px;margin:-.2rem;padding:.2rem}.coupon-table{min-width:580px;border-spacing:0 .2rem}.coupon-table th,.coupon-table td{padding:.45rem .6rem;font-size:.73rem}.coupon-table th{font-size:.68rem}.edit-btn,.delete-btn{padding:.25rem .5rem;font-size:.68rem;width:3.5rem;border-radius:5px}.no-coupon-row{padding:1.5rem .8rem;font-size:.82rem}.navbar{padding:0 .8rem;height:54px;flex-wrap:wrap}.navbar__nav{gap:.8rem;flex-wrap:wrap}.logo{font-size:1.1rem;margin-right:.8rem}.navbar__link,.navbar__dropdown-toggle{padding:5px 7px;font-size:.82rem}.navbar__logout{padding:5px 10px;font-size:.82rem}.navbar__dropdown-menu{width:170px;margin-top:.2rem}.navbar__dropdown-menu a{padding:.55rem .9rem;font-size:.78rem}}.orders-container{max-width:1200px;margin:2rem auto;padding:1rem;font-family:var(--font-body);color:var(--ink)}.orders-container h1{font-size:2rem;font-weight:700;margin-bottom:2rem;border-bottom:2px solid var(--line);padding-bottom:.5rem}.order-card{background-color:var(--surface);border:1px solid var(--line);border-radius:12px;margin-bottom:2rem;box-shadow:0 2px 12px #0000000a;padding:1.5rem;transition:box-shadow .2s ease}.order-card:hover{box-shadow:0 4px 18px #00000014}.order-card-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem}.order-card-header div{font-size:1rem}.order-status{padding:.3rem .75rem;border-radius:9999px;font-weight:600;font-size:.85rem;color:var(--surface)}.status-pending{background-color:var(--warn)}.status-confirmed{background-color:var(--ok)}.status-shipped{background-color:var(--accent)}.status-delivered{background-color:#8b5cf6}.status-cancelled{background-color:var(--err)}.view-order-btn{padding:.4rem 1rem;background-color:var(--accent);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s ease;font-weight:500}.view-order-btn:hover{background-color:var(--accent)}.order-products-grid{display:flex;flex-wrap:wrap;gap:1.2rem}.product-cell{display:flex;align-items:flex-start;width:calc(50% - .6rem);background:var(--surface-2);border-radius:8px;padding:1rem;gap:1.5rem;border:1px solid var(--line)}.product-thumb{width:120px;height:120px;object-fit:cover;border-radius:8px;background-color:var(--surface);padding:0;flex-shrink:0}.product-info{display:flex;flex-direction:column;align-items:start;gap:.5rem;flex:1}.product-name{font-size:1rem;font-weight:600;color:var(--ink);line-height:1.4;margin:0}.product-price{font-size:.95rem;color:var(--ok);font-weight:600;margin:0}.product-discount{font-size:.85rem;color:var(--err);font-weight:500;margin-left:.5rem}.product-qty{font-size:.9rem;color:var(--ink-soft);font-weight:500;margin:0}.product-description{font-size:.875rem;color:var(--ink-soft);line-height:1.5;margin:.25rem 0 0}@media(max-width:768px){.order-products-grid{flex-direction:column}.product-cell{width:100%}.order-card-header{flex-direction:column;align-items:flex-start}}.center{text-align:center;margin-top:2rem;font-family:var(--font-body);color:var(--ink)}.error{color:var(--err);font-weight:500;margin-top:1rem}.back-btn{display:inline-block;margin:1rem;background:none;border:none;color:var(--accent);cursor:pointer;font-size:1rem;font-weight:500;transition:color .2s ease-in-out}.back-btn:hover{color:var(--accent);text-decoration:underline}.order-info,.payment-breakdown,.order-products,.order-address,.order-actions,.order-tracking{margin:1.5rem 2rem;padding:1.25rem 1.5rem;background-color:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:0 1px 3px #0000000d;font-family:var(--font-body)}.order-info h2{margin-bottom:.75rem;font-size:1.5rem;color:var(--ink)}.order-info p{margin:.5rem 0;font-size:1rem;color:var(--ink-soft)}.status-select{font-size:1rem;padding:.35rem .5rem;border:1px solid var(--line);border-radius:6px;background-color:var(--surface-2);color:var(--ink);transition:background-color .2s ease-in-out}.status-select:disabled,.status-select.disabled{opacity:.5;cursor:not-allowed}.payment-breakdown h3,.order-products h3,.order-address h3,.order-tracking h3{margin-bottom:.75rem;font-size:1.25rem;color:var(--ink);border-bottom:2px solid var(--line);padding-bottom:.5rem}.payment-breakdown div,.grand-total{display:flex;justify-content:space-between;margin:.5rem 0;font-size:1rem;color:var(--ink)}.grand-total{margin-top:1rem;font-size:1.1rem;font-weight:600;color:var(--ink)}.products-grid{display:flex;flex-wrap:wrap;gap:1rem;justify-content:start}.product-cell{background-color:var(--surface-2);border-radius:6px;padding:.75rem;width:calc(100% / 3 - 1rem);text-align:center;box-shadow:0 1px 2px #0000000d}.product-cell img{width:35%;height:120px;object-fit:cover;margin-bottom:.5rem;border-radius:4px;background-color:var(--surface);padding:0}.product-cell p{margin:.25rem 0;font-size:.95rem;color:var(--ink)}.order-product-item{height:150px;display:flex;align-items:center;justify-content:space-between}.products-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.product-detail-card{display:flex;flex-direction:column;background-color:var(--surface-2);border:1px solid var(--line);border-radius:8px;padding:1.25rem;transition:box-shadow .2s ease-in-out;height:100%}.product-detail-card:hover{box-shadow:0 4px 6px #0000001a}.product-image-section{width:100%;display:flex;justify-content:center;margin-bottom:1rem}.product-detail-image{width:100%;max-width:250px;height:200px;object-fit:cover;border-radius:6px;background-color:var(--surface);border:1px solid var(--line)}.product-info-section{flex:1;display:flex;flex-direction:column;gap:.75rem}.product-name{font-size:1.125rem;font-weight:600;color:var(--ink);margin:0 0 .5rem;text-align:center}.product-details-row{display:flex;flex-direction:column;gap:.75rem}.product-detail-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--line)}.detail-label{font-size:.875rem;font-weight:500;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:1rem;font-weight:600;color:var(--ink)}.detail-value.total-amount{color:var(--ok);font-size:1.125rem}.product-description{margin-top:.5rem;padding-top:.75rem;border-top:1px solid var(--line)}.description-text{margin:.5rem 0 0;font-size:.95rem;color:var(--ink-soft);line-height:1.6;white-space:pre-wrap}.product-meta{display:flex;gap:.75rem;margin-top:.5rem;flex-wrap:wrap}.meta-badge{display:inline-block;padding:.375rem .75rem;font-size:.875rem;font-weight:500;border-radius:4px;background-color:#dbeafe;color:#1e40af}.meta-badge.in-stock{background-color:#d1fae5;color:#065f46}.meta-badge.out-of-stock{background-color:#fee2e2;color:#991b1b}.order-address p{margin:.4rem 0;font-size:1rem;color:var(--ink-soft)}.order-actions{text-align:center}.invoice-btn{padding:.6rem 1.2rem;background-color:var(--ok);color:var(--surface);border:none;border-radius:6px;cursor:pointer;font-size:1rem;font-weight:500;transition:background-color .2s ease-in-out,transform .1s ease-in-out;box-shadow:0 1px 2px #0000001a}.invoice-btn.disabled,.invoice-btn[disabled]{background-color:var(--line);cursor:not-allowed;opacity:.6;box-shadow:none}.invoice-btn:not(.disabled):hover{background-color:var(--ok);transform:translateY(-1px)}.invoice-btn:not(.disabled):active{transform:translateY(1px)}.order-tracking{background-color:var(--surface-2);border:1px solid var(--line);border-radius:8px}.tracking-input-section{display:flex;flex-direction:column;gap:.75rem}.tracking-input-section label{font-weight:600;color:var(--ink);font-size:.95rem}.tracking-input{width:100%;padding:.75rem;border:2px solid var(--line);border-radius:6px;font-size:.95rem;font-family:var(--font-body);transition:all .2s ease}.tracking-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #3b82f61a}.tracking-note{font-size:.85rem;color:var(--ink-soft);margin:0;padding:.5rem;background-color:#eff6ff;border-left:3px solid var(--accent);border-radius:4px}@media(max-width:1024px){.product-cell{width:calc(50% - 1rem)}}@media(max-width:640px){.order-info,.payment-breakdown,.order-products,.order-address,.order-actions,.order-tracking{margin:1rem;padding:1rem}.products-grid{gap:.75rem}.product-cell{width:100%;padding:.5rem}.invoice-btn{width:100%;padding:.8rem 0}}.users-container{padding:2rem;font-family:var(--font-body);max-width:1200px;margin:0 auto}.users-container h1{margin-bottom:1rem;color:var(--ink)}.users-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.users-table{width:100%;border-collapse:collapse;margin-top:1rem}.users-table th,.users-table td{border:1px solid var(--line);padding:.75rem;text-align:left;font-size:.95rem}.users-table th{background-color:var(--surface-2)}.users-table tr:nth-child(2n){background-color:var(--surface-2)}.center{text-align:center;margin-top:2rem}.error{color:red}@media(max-width:768px){.users-container{padding:1.25rem 1rem}.users-table th,.users-table td{padding:.6rem;font-size:.85rem}}@media(max-width:600px){.users-table-wrap{overflow-x:visible}.users-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.users-table,.users-table tbody,.users-table tr,.users-table td{display:block;width:100%}.users-table tr{margin-bottom:1rem;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}.users-table tr:nth-child(2n){background:var(--surface)}.users-table td{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;border:none;border-bottom:1px solid var(--line);padding:.65rem .9rem;text-align:right;word-break:break-word}.users-table td:last-child{border-bottom:none}.users-table td:before{content:attr(data-label);font-weight:600;color:var(--ink-soft);text-align:left;flex:0 0 40%}}:root{--primary-color: var(--accent);--primary-hover: var(--accent);--primary-light: #dbeafe;--secondary-color: var(--ink-soft);--background-color: var(--surface-2);--card-background: var(--surface);--border-color: var(--line);--text-primary: var(--ink);--text-secondary: var(--ink-soft);--text-muted: #9ca3af;--success-color: var(--ok);--warning-color: var(--warn);--danger-color: var(--err);--border-radius: 8px;--border-radius-lg: 12px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1)}.admin-product-details{max-width:1200px;margin:2rem auto;padding:0 2rem;font-family:Inter,sans-serif;background-color:var(--background-color);min-height:100vh}.product-top{display:grid;grid-template-columns:1fr 420px;gap:1.5rem;align-items:start;margin-bottom:1.5rem}.gallery{display:flex;flex-direction:column;gap:.75rem}.main-image-wrap{background:var(--card-background);border:1px solid var(--border-color);border-radius:var(--border-radius);display:flex;align-items:center;justify-content:center;min-height:360px;overflow:hidden}.main-image{width:100%;height:100%;object-fit:contain;display:block}.thumbnails{display:flex;gap:.5rem;flex-wrap:nowrap;overflow-x:auto}.thumb-btn{background:transparent;border:1px solid transparent;padding:4px;border-radius:6px;cursor:pointer;flex:0 0 auto}.thumb-btn img{width:64px;height:64px;object-fit:cover;border-radius:4px}.thumb-btn.active{border-color:var(--primary-color);box-shadow:0 4px 12px #3b82f61f}.no-image{color:var(--text-muted);padding:2rem}.ecommerce-info .product-name{font-size:1.6rem;margin-bottom:.75rem;line-height:1.3}.product-category{margin-bottom:1rem}.price-row{display:flex;align-items:baseline;gap:1.25rem;margin:1.25rem 0}.product-price{font-size:1.8rem;color:var(--success-color);font-weight:800}.product-stock.in-stock{color:var(--success-color);font-weight:600}.product-stock.out-of-stock{color:var(--danger-color);font-weight:700}.rating-row{display:flex;gap:.75rem;align-items:center;margin-bottom:1.25rem}.rating-value{background:var(--primary-light);padding:.4rem .75rem;border-radius:6px;font-weight:700;font-size:.95rem}.rating-count{color:var(--text-secondary);font-size:.9rem}.purchase-actions{display:flex;gap:.75rem;margin-top:1.5rem;align-items:center}.add-to-cart{background:linear-gradient(90deg,var(--primary-color),var(--primary-hover));color:#fff;border:none;padding:.9rem 1.25rem;border-radius:10px;font-weight:700;cursor:pointer;box-shadow:var(--shadow-md)}.add-to-cart:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:transparent;border:1px solid var(--border-color);padding:.7rem 1rem;border-radius:8px;cursor:pointer}.back-btn{margin-bottom:2rem;padding:.75rem 1.5rem;background:var(--primary-color);color:#fff;border:none;border-radius:var(--border-radius);cursor:pointer;font-weight:600;font-size:.9rem;display:inline-flex;align-items:center;gap:.5rem;transition:all .2s ease;box-shadow:var(--shadow-sm)}.back-btn:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.product-info{background:var(--card-background);padding:2rem;border-radius:var(--border-radius-lg);margin-bottom:2rem;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.product-name{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem;line-height:1.2}.product-category,.product-price,.product-stock{font-size:1rem;color:var(--text-secondary);margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.product-category strong,.product-price strong,.product-stock strong{color:var(--text-primary);font-weight:600;min-width:80px}.product-price{font-size:1.25rem;color:var(--success-color);font-weight:600}.product-description{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-color)}.product-description h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem}.product-description p{font-size:1rem;color:var(--text-secondary);line-height:1.6}.product-images{background:var(--card-background);padding:2rem;border-radius:var(--border-radius-lg);margin-bottom:2rem;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.product-images h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:1.5rem}.images-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.detail-image{width:100%;height:150px;object-fit:cover;border:1px solid var(--border-color);border-radius:var(--border-radius);transition:all .2s ease;cursor:pointer}.detail-image:hover{transform:scale(1.05);box-shadow:var(--shadow-lg);border-color:var(--primary-color)}.reviews-section{background:var(--card-background);padding:2rem;border-radius:var(--border-radius-lg);margin-bottom:2rem;box-shadow:var(--shadow-md);border:1px solid var(--border-color)}.reviews-heading{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.overall-rating{background:var(--primary-light);padding:1rem;border-radius:var(--border-radius);margin-bottom:2rem;display:flex;align-items:center;justify-content:center}.avg-value{font-weight:600;color:var(--primary-color);font-size:1.1rem}.review-list{display:flex;flex-direction:column;gap:1.5rem}.review-item{border:1px solid var(--border-color);border-radius:var(--border-radius);padding:1.5rem;background:var(--background-color);transition:all .2s ease}.review-item:hover{box-shadow:var(--shadow-md);border-color:var(--primary-color)}.review-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.5rem}.review-author{font-weight:600;color:var(--text-primary);font-size:1rem}.review-rating{font-size:.9rem;color:var(--warning-color);font-weight:500}.review-date{font-size:.85rem;color:var(--text-muted);margin-bottom:1rem}.review-comment{font-size:1rem;color:var(--text-secondary);line-height:1.6;margin-top:.5rem}.no-reviews-text{text-align:center;color:var(--text-muted);font-size:1rem;margin-top:2rem;padding:2rem;background:var(--background-color);border-radius:var(--border-radius)}.loading-text,.error-text{text-align:center;color:var(--text-muted);font-size:1.1rem;margin:3rem 0;padding:2rem;background:var(--card-background);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.error-text{color:var(--danger-color);border:1px solid var(--danger-color);background:#fef2f2}@media(max-width:1200px){.admin-product-details{max-width:1000px;padding:0 1.5rem;margin:1.5rem auto}.product-info,.product-images,.reviews-section{padding:1.75rem}.product-name{font-size:1.8rem}.images-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.detail-image{height:140px}}@media(max-width:1024px){.admin-product-details{max-width:100%;padding:0 1.25rem;margin:1.25rem auto}.product-info,.product-images,.reviews-section{padding:1.5rem;margin-bottom:1.5rem}.product-name{font-size:1.6rem;margin-bottom:1.25rem}.back-btn{padding:.65rem 1.25rem;font-size:.85rem;margin-bottom:1.5rem}.images-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.detail-image{height:130px}.review-item{padding:1.25rem}}@media(max-width:768px){.admin-product-details{padding:0 1rem;margin:1rem auto}.product-info,.product-images,.reviews-section{padding:1.25rem;margin-bottom:1.25rem;border-radius:var(--border-radius)}.product-name{font-size:1.4rem;margin-bottom:1rem}.product-category,.product-price,.product-stock{flex-direction:column;align-items:flex-start;gap:.25rem}.product-category strong,.product-price strong,.product-stock strong{min-width:auto;font-size:.9rem}.product-description{margin-top:1.5rem;padding-top:1.5rem}.product-description h3{font-size:1.1rem;margin-bottom:.75rem}.product-images h3,.reviews-heading{font-size:1.1rem;margin-bottom:1rem}.images-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.detail-image{height:120px}.review-header{flex-direction:column;align-items:flex-start;gap:.5rem}.review-item{padding:1rem}.overall-rating{padding:.75rem;margin-bottom:1.5rem}.back-btn{padding:.6rem 1rem;font-size:.8rem;margin-bottom:1.25rem}}@media(max-width:640px){.admin-product-details{padding:0 .75rem;margin:.75rem auto}.product-info,.product-images,.reviews-section{padding:1rem;margin-bottom:1rem}.product-name{font-size:1.25rem;margin-bottom:.875rem}.product-category,.product-price,.product-stock{font-size:.9rem;margin-bottom:.6rem}.product-price{font-size:1.1rem}.product-description p{font-size:.9rem}.images-grid{grid-template-columns:1fr 1fr;gap:.6rem}.detail-image{height:100px}.review-list{gap:1rem}.review-item{padding:.875rem}.review-author{font-size:.9rem}.review-rating{font-size:.8rem}.review-comment{font-size:.9rem}.back-btn{padding:.55rem .875rem;font-size:.75rem;margin-bottom:1rem}}@media(max-width:480px){.admin-product-details{padding:0 .6rem;margin:.6rem auto}.product-info,.product-images,.reviews-section{padding:.875rem;margin-bottom:.875rem}.product-name{font-size:1.1rem;margin-bottom:.75rem;line-height:1.3}.product-category,.product-price,.product-stock{font-size:.85rem;margin-bottom:.5rem}.product-price{font-size:1rem}.product-description{margin-top:1.25rem;padding-top:1.25rem}.product-description h3{font-size:1rem;margin-bottom:.6rem}.product-description p{font-size:.85rem}.product-images h3,.reviews-heading{font-size:1rem;margin-bottom:.875rem}.images-grid{grid-template-columns:1fr;gap:.5rem}.detail-image{height:200px;max-width:300px;margin:0 auto}.review-item{padding:.75rem}.review-author{font-size:.85rem}.review-rating{font-size:.75rem}.review-date{font-size:.8rem}.review-comment{font-size:.85rem}.overall-rating{padding:.6rem;margin-bottom:1.25rem}.avg-value{font-size:1rem}.back-btn{padding:.5rem .75rem;font-size:.7rem;margin-bottom:.875rem}}@media(max-width:410px){.admin-product-details{padding:0 .5rem;margin:.5rem auto}.product-info,.product-images,.reviews-section{padding:.75rem;margin-bottom:.75rem}.product-name{font-size:1rem;margin-bottom:.6rem}.product-category,.product-price,.product-stock{font-size:.8rem;margin-bottom:.4rem}.product-price{font-size:.95rem}.product-description{margin-top:1rem;padding-top:1rem}.product-description h3{font-size:.95rem;margin-bottom:.5rem}.product-description p{font-size:.8rem;line-height:1.5}.product-images h3,.reviews-heading{font-size:.95rem;margin-bottom:.75rem}.detail-image{height:180px;max-width:280px}.review-item{padding:.65rem}.review-header{gap:.4rem}.review-author{font-size:.8rem}.review-rating{font-size:.7rem}.review-date{font-size:.75rem}.review-comment{font-size:.8rem}.overall-rating{padding:.5rem;margin-bottom:1rem}.avg-value{font-size:.9rem}.back-btn{padding:.45rem .65rem;font-size:.65rem;margin-bottom:.75rem}.loading-text,.error-text{font-size:1rem;margin:2rem 0;padding:1.5rem}.no-reviews-text{font-size:.9rem;margin-top:1.5rem;padding:1.5rem}}@media(max-width:768px)and (orientation:landscape){.images-grid{grid-template-columns:repeat(4,1fr);gap:.5rem}.detail-image{height:90px}.product-info,.product-images,.reviews-section{padding:1rem 1.5rem}}@media(max-width:1024px){.product-top{grid-template-columns:1fr}.main-image-wrap{min-height:320px}.product-images{order:1}.product-info.ecommerce-info{order:2}}@media(max-width:768px){.main-image-wrap{min-height:260px}.thumbnails img{width:56px;height:56px}.product-price{font-size:1.4rem}}@media(max-width:480px){.main-image-wrap{min-height:220px}.thumbnails img{width:72px;height:72px}.product-top{gap:1rem}.add-to-cart{padding:.75rem 1rem}}@media(max-width:500px){.product-top{grid-template-columns:1fr;align-items:start;gap:.9rem}.product-images,.product-info.ecommerce-info{width:100%}.main-image-wrap{min-height:200px;display:flex;align-items:center;justify-content:center;padding:.25rem}.main-image{max-width:100%;max-height:56vh;height:auto;object-fit:contain}.thumbnails{display:flex;gap:.5rem;overflow-x:auto;padding:.25rem .25rem .5rem;-webkit-overflow-scrolling:touch}.thumbnails img{width:64px;height:64px;object-fit:cover;border-radius:6px}.thumb-btn{flex:0 0 auto;padding:0;border-radius:6px}.product-name{font-size:1.05rem}.product-price{font-size:1.25rem}.product-category,.product-stock{font-size:.92rem}.purchase-actions{display:flex;flex-direction:column;gap:.6rem;margin-top:.5rem}.add-to-cart{width:100%;padding:.8rem .9rem;font-size:1rem}.btn-secondary{width:100%}.reviews-section{margin-top:1rem}}@media(max-width:410px){.admin-product-details{padding:0 .5rem;margin:.5rem auto}.product-top{grid-template-columns:1fr;gap:.6rem}.product-images{width:100%;max-width:100%;padding:.5rem;box-sizing:border-box}.gallery{width:100%;max-width:100%}.main-image-wrap{min-height:180px;padding:.25rem;width:100%;box-sizing:border-box}.main-image{max-height:45vh;max-width:100%;width:auto;height:auto;object-fit:contain}.thumbnails{gap:.35rem;padding:.25rem 0;width:100%;overflow-x:auto;scrollbar-width:thin}.thumbnails::-webkit-scrollbar{height:4px}.thumbnails::-webkit-scrollbar-track{background:var(--background-color);border-radius:2px}.thumbnails::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}.thumbnails img{width:52px;height:52px;border-radius:4px;object-fit:cover}.thumb-btn{padding:2px;flex-shrink:0}.product-info{padding:.75rem;width:100%;box-sizing:border-box}.product-name{font-size:1rem;line-height:1.3;margin-bottom:.5rem}.product-category{font-size:.8rem;margin-bottom:.4rem}.price-row{flex-direction:column;align-items:flex-start;gap:.4rem;margin:.5rem 0}.product-price{font-size:1.15rem;font-weight:700}.product-stock{font-size:.8rem}.rating-row{margin-bottom:.6rem}.rating-value{font-size:.85rem;padding:.25rem .5rem}.rating-count{font-size:.8rem}.product-description{margin-top:.75rem;padding-top:.75rem}.product-description h3{font-size:.95rem;margin-bottom:.4rem}.product-description p{font-size:.8rem;line-height:1.5}.purchase-actions{gap:.5rem;margin-top:.75rem}.add-to-cart{padding:.7rem .8rem;font-size:.95rem;width:100%}.btn-secondary{padding:.6rem .7rem;font-size:.9rem;width:100%}.reviews-section{padding:.75rem;margin-top:.75rem}.reviews-heading{font-size:1rem}.back-btn{padding:.45rem .6rem;font-size:.7rem;margin-bottom:.75rem}}.notifications-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:2rem}.notifications-container{max-width:1200px;margin:0 auto}.notifications-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.notifications-header h1{font-size:2rem;color:var(--ink);margin:0}.header-stats{display:flex;gap:1rem;align-items:center}.unread-badge{background:linear-gradient(135deg,var(--accent) 0%,#764ba2 100%);color:#fff;padding:6px 16px;border-radius:20px;font-weight:600;font-size:14px}.notifications-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;background:#fff;padding:1rem;border-radius:12px;box-shadow:0 2px 8px #0000001a}.filter-buttons{display:flex;gap:8px}.filter-buttons button{padding:8px 20px;border:2px solid var(--line);background:#fff;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;color:var(--ink-soft);transition:all .2s}.filter-buttons button:hover{border-color:var(--accent);color:var(--accent)}.filter-buttons button.active{background:linear-gradient(135deg,var(--accent) 0%,#764ba2 100%);color:#fff;border-color:transparent}.action-buttons{display:flex;gap:12px}.btn-secondary,.btn-danger{padding:8px 16px;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s}.btn-secondary{background:var(--accent);color:#fff}.btn-secondary:hover{background:#5568d3;transform:translateY(-2px)}.btn-danger{background:var(--err);color:#fff}.btn-danger:hover{background:#c00;transform:translateY(-2px)}.loading-state,.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid var(--accent);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.empty-icon{font-size:80px;display:block;margin-bottom:1rem;opacity:.3}.empty-state h2{color:var(--ink-soft);margin-bottom:.5rem}.empty-state p{color:var(--ink-soft)}.notifications-grid{display:grid;gap:1rem;margin-bottom:2rem}.notification-card{display:flex;gap:1rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;cursor:pointer;transition:all .2s;border-left:4px solid transparent}.notification-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.notification-card.unread{background:linear-gradient(135deg,#f0f7ff 0%,var(--surface) 100%);border-left-color:var(--accent)}.notification-card.priority-high{border-left-color:var(--err)}.notification-card.priority-medium{border-left-color:var(--warn)}.notification-card.priority-low{border-left-color:var(--ok)}.card-icon{font-size:40px;flex-shrink:0}.card-content{flex:1;min-width:0}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.card-header h3{margin:0;font-size:16px;color:var(--ink);font-weight:600}.delete-btn{background:none;border:none;font-size:24px;color:var(--ink-soft);cursor:pointer;padding:0;width:28px;height:28px;line-height:1;transition:color .2s;position:relative;z-index:10}.delete-btn:hover{color:var(--err)}.card-message{color:var(--ink-soft);font-size:14px;line-height:1.5;margin:0 0 .75rem}.card-footer{display:flex;justify-content:space-between;align-items:center}.timestamp{font-size:12px;color:var(--ink-soft)}.unread-indicator{color:var(--accent);font-size:12px}.pagination{display:flex;justify-content:center;align-items:center;gap:2rem;padding:2rem;background:#fff;border-radius:12px}.pagination button{padding:10px 24px;border:2px solid var(--accent);background:#fff;color:var(--accent);border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s}.pagination button:hover:not(:disabled){background:var(--accent);color:#fff}.pagination button:disabled{opacity:.3;cursor:not-allowed}.pagination span{font-weight:600;color:var(--ink-soft)}@media(max-width:768px){.notifications-page{padding:1rem}.notifications-header{flex-direction:column;align-items:flex-start;gap:1rem}.notifications-toolbar{flex-direction:column;gap:1rem}.filter-buttons,.action-buttons{width:100%}.filter-buttons button{flex:1}.action-buttons{flex-direction:column}.action-buttons button{width:100%}.notification-card{padding:1rem}.card-icon{font-size:32px}}.admin-feature{width:100%;max-width:1100px;margin:0 auto;padding:1.5rem 2rem;font-family:var(--font-body);color:var(--ink)}.admin-feature h2{margin-bottom:1.25rem}.admin-feature .mb-3{margin-bottom:1rem}.admin-feature .mb-2{margin-bottom:.5rem}.admin-feature .mb-1{margin-bottom:.25rem}.admin-feature .mb-0{margin-bottom:0}.admin-feature .mt-1{margin-top:.25rem}.admin-feature .py-4{padding-top:1.5rem;padding-bottom:1.5rem}.admin-feature .text-muted{color:var(--ink-soft)}.admin-feature .small{font-size:.85rem}.admin-feature .w-auto{width:auto!important}.admin-feature .alert{padding:.85rem 1rem;border-radius:8px;border:1px solid transparent;margin-bottom:1rem}.admin-feature .alert-danger{color:var(--err);background-color:#f8d7da;border-color:#f5c6cb}.admin-feature .row{display:flex;flex-wrap:wrap}.admin-feature .g-3{gap:1rem}.admin-feature .g-2{gap:.5rem}.admin-feature .col-12{flex:0 0 100%;max-width:100%}.admin-feature .col-6{flex:0 0 calc(50% - .25rem);max-width:calc(50% - .25rem)}@media(min-width:992px){.admin-feature .col-lg-6{flex:0 0 calc(50% - .5rem);max-width:calc(50% - .5rem)}}.admin-feature .d-flex{display:flex}.admin-feature .justify-content-between{justify-content:space-between}.admin-feature .align-items-start{align-items:flex-start}.admin-feature .card{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 2px 12px #0000000a;width:100%}.admin-feature .card-body{padding:1.25rem}.admin-feature .card-title{font-size:1.05rem;font-weight:600;color:var(--ink)}.admin-feature .table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-feature .table{width:100%;border-collapse:collapse;min-width:720px}.admin-feature .table th,.admin-feature .table td{padding:.7rem .85rem;text-align:left;border-bottom:1px solid var(--line);font-size:.9rem;vertical-align:middle}.admin-feature .table th{background:var(--surface-2);font-weight:600;white-space:nowrap}.admin-feature .table-striped tbody tr:nth-child(2n){background:var(--surface-2)}.admin-feature .align-middle td,.admin-feature .align-middle th{vertical-align:middle}.admin-feature .form-select,.admin-feature .form-control{width:100%;padding:.5rem .75rem;border:1px solid var(--line);border-radius:8px;font-size:.9rem;background-color:var(--surface);color:var(--ink);transition:border-color .2s ease,box-shadow .2s ease}.admin-feature .form-select-sm,.admin-feature .form-control-sm{padding:.35rem .6rem;font-size:.82rem;border-radius:6px}.admin-feature .form-select:focus,.admin-feature .form-control:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #8a5a3226}.admin-feature ul.small{padding-left:1.1rem}@media(max-width:768px){.admin-feature{padding:1.25rem 1rem}}@media(max-width:420px){.admin-feature{padding:1rem .75rem}.admin-feature .col-6{flex:0 0 100%;max-width:100%}.admin-feature .card-body{padding:1rem}}.toast-container{position:fixed;top:80px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:12px;max-width:400px}.notification-toast{display:flex;align-items:flex-start;gap:12px;background:#fff;padding:16px;border-radius:12px;box-shadow:0 4px 24px #00000026,0 0 0 1px #0000000d;cursor:pointer;transition:all .3s ease;border-left:4px solid var(--accent);min-width:350px}.notification-toast:hover{transform:translate(-4px);box-shadow:0 8px 32px #0003}.notification-toast.priority-high{border-left-color:var(--err);background:linear-gradient(135deg,#fff5f5 0%,var(--surface) 100%)}.notification-toast.priority-medium{border-left-color:var(--warn);background:linear-gradient(135deg,#fffaf0 0%,var(--surface) 100%)}.notification-toast.priority-low{border-left-color:var(--ok);background:linear-gradient(135deg,#f0fff4 0%,var(--surface) 100%)}.toast-enter{animation:slideInRight .4s cubic-bezier(.68,-.55,.265,1.55)}@keyframes slideInRight{0%{transform:translate(120%);opacity:0}to{transform:translate(0);opacity:1}}.toast-icon-wrapper{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent) 0%,#764ba2 100%);border-radius:12px;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 0 #667eeab3}50%{transform:scale(1.05);box-shadow:0 0 0 8px #667eea00}}.notification-toast.priority-high .toast-icon-wrapper{background:linear-gradient(135deg,var(--err) 0%,#cc0000 100%)}.notification-toast.priority-medium .toast-icon-wrapper{background:linear-gradient(135deg,var(--warn) 0%,#ff8c00 100%)}.notification-toast.priority-low .toast-icon-wrapper{background:linear-gradient(135deg,var(--ok) 0%,#388e3c 100%)}.toast-icon{font-size:28px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.toast-content{flex:1;min-width:0}.toast-title{font-weight:700;font-size:15px;color:#1a1a1a;margin-bottom:4px;line-height:1.3}.toast-message{font-size:13px;color:var(--ink-soft);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.toast-close{flex-shrink:0;background:none;border:none;font-size:24px;color:var(--ink-soft);cursor:pointer;padding:0;width:28px;height:28px;line-height:1;border-radius:6px;transition:all .2s}.toast-close:hover{background:#0000000d;color:var(--ink)}@media(max-width:480px){.toast-container{top:60px;right:12px;left:12px;max-width:none}.notification-toast{min-width:auto}.toast-icon-wrapper{width:40px;height:40px}.toast-icon{font-size:24px}}.notification-toast.priority-high:before{content:"";position:absolute;inset:-2px;background:linear-gradient(45deg,var(--err),transparent,var(--err));border-radius:12px;z-index:-1;opacity:0;animation:borderPulse 2s infinite}@keyframes borderPulse{0%,to{opacity:0}50%{opacity:.3}}
