@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";html{scroll-behavior:smooth}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--primary: #2563eb;--primary-hover: #1d4ed8;--primary-light: #eff6ff;--primary-dark: #1e40af;--secondary: #64748b;--success: #059669;--danger: #dc2626;--warning: #d97706;--info: #0284c7;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--sidebar-width: 260px;--sidebar-collapsed-width: 64px;--navbar-height: 64px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .04);--shadow: 0 1px 3px 0 rgb(0 0 0 / .06), 0 1px 2px -1px rgb(0 0 0 / .06);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .07), 0 2px 4px -2px rgb(0 0 0 / .05);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .08), 0 4px 6px -4px rgb(0 0 0 / .05);--shadow-card: 0 1px 3px 0 rgb(0 0 0 / .05), 0 1px 2px -1px rgb(0 0 0 / .05);--radius-sm: .375rem;--radius: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--bg-surface: #ffffff;--bg-surface-alt: #f8fafc;--bg-page: linear-gradient(145deg, var(--gray-50) 0%, #f0f9ff 22%, #faf5ff 45%, #fdf4ff 65%, #ecfeff 85%, var(--gray-50) 100%);--bg-page-attachment: fixed;--error-bg: #fef2f2;--error-border: #fecaca;--error-text: #b91c1c;--success-bg: #dcfce7;--success-text: #15803d;--warning-bg: #fef3c7;--warning-border: #f59e0b;--glass-bg: rgba(255, 255, 255, .72);--glass-bg-solid: rgba(248, 250, 252, .94);--glass-blur: 12px;--glass-border: 1px solid rgba(255, 255, 255, .6);--glass-border-subtle: 1px solid rgba(148, 163, 184, .2);--mirror-reflection-height: 36%;--mirror-highlight-gradient: linear-gradient( 105deg, rgba(255, 255, 255, .9) 0%, rgba(186, 230, 253, .4) 25%, rgba(196, 181, 253, .35) 50%, rgba(253, 186, 216, .25) 75%, rgba(255, 255, 255, .6) 100% );--mirror-reflection-gradient: linear-gradient( to top, rgba(139, 92, 246, .07) 0%, rgba(59, 130, 246, .05) 35%, rgba(34, 211, 238, .04) 65%, transparent 100% )}html[data-theme=dark]{--bg-page: linear-gradient(145deg, #070d1e 0%, #0a1020 25%, #0d1428 50%, #0b1020 75%, #070d1e 100%);--bg-surface: #0e1528;--bg-surface-alt: #111d35;--primary-light: rgba(37, 99, 235, .18);--glass-bg: rgba(14, 21, 42, .72);--glass-bg-solid: rgba(14, 21, 42, .96);--glass-border: 1px solid rgba(255, 255, 255, .07);--glass-border-subtle: 1px solid rgba(255, 255, 255, .09);--gray-50: #111d35;--gray-100: #162038;--gray-200: #1e2c4a;--gray-300: #263660;--gray-400: #3d5278;--gray-500: #607898;--gray-600: #859ab8;--gray-700: #a5b8d0;--gray-800: #c8d5e8;--gray-900: #e6edf8;--mirror-highlight-gradient: linear-gradient( 105deg, rgba(37, 99, 235, .22) 0%, rgba(56, 189, 248, .12) 50%, rgba(37, 99, 235, .16) 100% );--mirror-reflection-gradient: linear-gradient( to top, rgba(37, 99, 235, .06) 0%, rgba(29, 78, 216, .03) 50%, transparent 100% );--error-bg: rgba(127, 29, 29, .38);--error-border: rgba(239, 68, 68, .36);--error-text: #fca5a5;--success-bg: rgba(6, 78, 59, .38);--success-text: #6ee7b7;--warning-bg: rgba(120, 53, 15, .38);--warning-border: rgba(245, 158, 11, .4)}body{font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-page);background-attachment:var(--bg-page-attachment);color:var(--gray-900);line-height:1.6;font-size:1rem}#root{min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:100px}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.card{background:var(--glass-bg-solid);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-radius:var(--radius-lg);border:var(--glass-border-subtle);box-shadow:var(--shadow);padding:1.5rem;position:relative;overflow:visible}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--mirror-highlight-gradient);border-radius:var(--radius-lg) var(--radius-lg) 0 0;pointer-events:none}.card:after{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--mirror-reflection-height);background:var(--mirror-reflection-gradient);border-radius:0 0 var(--radius-lg) var(--radius-lg);pointer-events:none}.table-container{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--glass-bg-solid);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--glass-border-subtle);box-shadow:var(--shadow)}.table-container:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--mirror-highlight-gradient);border-radius:var(--radius-lg) var(--radius-lg) 0 0;pointer-events:none}.table-container table{position:relative;z-index:1}table{width:100%;border-collapse:collapse;font-size:.875rem}thead{background-color:var(--gray-50)}th{text-align:left;font-weight:600;font-size:.6875rem;text-transform:uppercase;letter-spacing:.06em;color:var(--gray-500);padding:.75rem 1rem;border-bottom:1.5px solid var(--gray-200);white-space:nowrap}td{padding:.6875rem 1rem;border-bottom:1px solid var(--gray-100);color:var(--gray-800);vertical-align:middle;font-size:.8125rem}tbody tr{transition:background-color .15s ease}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background-color:var(--primary-light)}.empty-state{text-align:center;padding:3rem 2rem;color:var(--gray-500);font-size:.9375rem}.empty-state strong{display:block;color:var(--gray-700);font-size:1rem;font-weight:600;margin-bottom:.35rem}button{font-family:inherit;cursor:pointer;border:none;outline:none;transition:all .2s ease}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font-family:inherit;font-size:.875rem;line-height:1.5;border:1.5px solid var(--gray-200);border-radius:var(--radius);padding:.5625rem .875rem;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease,color .2s ease;background:var(--bg-surface, #fff);color:var(--gray-900)}input::placeholder,textarea::placeholder{color:var(--gray-400)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}html[data-theme=dark] input:not([type=radio]):not([type=checkbox]):not([type=file]),html[data-theme=dark] select,html[data-theme=dark] textarea{background-color:var(--bg-surface)!important;color:var(--gray-900)!important;border-color:var(--gray-300)!important}html[data-theme=dark] input:-webkit-autofill,html[data-theme=dark] input:-webkit-autofill:hover,html[data-theme=dark] input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px #162038 inset!important;-webkit-text-fill-color:var(--gray-900)!important;caret-color:var(--gray-900)}html[data-theme=dark] select option{background:#162038;color:var(--gray-900)}html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:var(--gray-500)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease-in-out}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes shimmer{0%{background-position:-400% 0}to{background-position:400% 0}}@keyframes pageEnter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.skeleton-shimmer{background:linear-gradient(90deg,var(--gray-200) 25%,var(--gray-100) 50%,var(--gray-200) 75%);background-size:400% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:var(--radius-sm);will-change:background-position}.page-enter{animation:pageEnter .22s ease-out both}.dash-stat-card{background:var(--glass-bg-solid);border:var(--glass-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:1.25rem 1.375rem;display:flex;align-items:center;gap:1rem;transition:box-shadow .2s ease,transform .2s ease;position:relative;overflow:hidden}.dash-stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--mirror-highlight-gradient);border-radius:var(--radius-lg) var(--radius-lg) 0 0;pointer-events:none}.dash-stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.dash-stat-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.dash-stat-body{flex:1;min-width:0}.dash-stat-label{margin:0 0 .25rem;font-size:.8125rem;font-weight:500;color:var(--gray-500)}.dash-stat-value{margin:0;font-size:1.875rem;font-weight:700;color:var(--gray-900);letter-spacing:-.03em;line-height:1}.dash-stat-loading{display:inline-block;width:56px;height:28px;border-radius:var(--radius-sm);background:linear-gradient(90deg,var(--gray-200) 25%,var(--gray-100) 50%,var(--gray-200) 75%);background-size:400% 100%;animation:shimmer 1.4s ease-in-out infinite;vertical-align:middle}.dash-stat-arrow{flex-shrink:0;opacity:0;transition:opacity .2s ease,transform .2s ease}.dash-stat-card:hover .dash-stat-arrow{opacity:1;transform:translate(3px)}.dash-quick-action{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem 1rem;background:var(--qa-bg, var(--gray-100));border:1px solid transparent;border-radius:var(--radius);color:var(--qa-color, var(--gray-700));font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .18s ease}.dash-quick-action-icon{display:flex;align-items:center;justify-content:center}.dash-quick-action:hover{filter:brightness(.93);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.dash-quick-action-outline{--qa-bg: transparent;--qa-color: var(--gray-600);border-color:var(--gray-300);gap:.5rem}.dash-quick-action-outline:hover{--qa-bg: var(--gray-50);filter:none;border-color:var(--gray-400)}.list-search-toolbar{padding:0 0 1rem;max-width:320px}.code-badge{display:inline-block;padding:.25rem .625rem;background-color:var(--primary-light);color:var(--primary);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;font-family:monospace}.status-badge{display:inline-block;padding:.25rem .625rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.status-badge.status-active{background-color:var(--success-bg, #dcfce7);color:var(--success-text, #15803d)}.status-badge.status-inactive{background-color:var(--error-bg, #fee2e2);color:var(--error-text, #b91c1c)}.status-badge.status-pending{background-color:var(--warning-bg, #fef3c7);color:#b45309}html[data-theme=dark] .status-badge.status-pending{background-color:#f59e0b2e;color:#fbbf24}.font-semibold{font-weight:600}.text-muted{color:var(--gray-400)}.action-buttons{display:flex;gap:.5rem}.action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--radius-sm, 6px);cursor:pointer;transition:all .2s ease}.action-btn:disabled{opacity:.6;cursor:not-allowed}.action-btn-view{background-color:#e0f2fe;color:#0369a1}.action-btn-view:hover:not(:disabled){background-color:#bae6fd}.action-btn-edit{background-color:var(--primary-light);color:var(--primary)}.action-btn-edit:hover:not(:disabled){background-color:#bee3f8}.action-btn-assign{background-color:#f3e8ff;color:#7c3aed}.action-btn-assign:hover:not(:disabled){background-color:#e9d5ff}.action-btn-modules{background-color:#f3e8ff;color:#7c3aed}.action-btn-modules:hover:not(:disabled){background-color:#e9d5ff}.action-btn-deactivate{background-color:#fee2e2;color:var(--danger)}.action-btn-deactivate:hover:not(:disabled){background-color:#fecaca}.action-btn-activate{background-color:#dcfce7;color:#15803d}.action-btn-activate:hover:not(:disabled){background-color:#bbf7d0}.delete-confirm{display:inline-flex;gap:.5rem;align-items:center;flex-wrap:wrap}html[data-theme=dark] .action-btn-view{background-color:#38bdf826;color:#38bdf8}html[data-theme=dark] .action-btn-view:hover:not(:disabled){background-color:#38bdf840}html[data-theme=dark] .action-btn-edit{background-color:#2563eb2e;color:#60a5fa}html[data-theme=dark] .action-btn-edit:hover:not(:disabled){background-color:#2563eb47}html[data-theme=dark] .action-btn-assign{background-color:#8b5cf62e;color:#a78bfa}html[data-theme=dark] .action-btn-assign:hover:not(:disabled){background-color:#8b5cf647}html[data-theme=dark] .action-btn-modules{background-color:#8b5cf62e;color:#a78bfa}html[data-theme=dark] .action-btn-modules:hover:not(:disabled){background-color:#8b5cf647}html[data-theme=dark] .action-btn-deactivate{background-color:#ef444426;color:#f87171}html[data-theme=dark] .action-btn-deactivate:hover:not(:disabled){background-color:#ef444440}html[data-theme=dark] .action-btn-activate{background-color:#22c55e26;color:#4ade80}html[data-theme=dark] .action-btn-activate:hover:not(:disabled){background-color:#22c55e40}@media(max-width:1024px){table{font-size:.8125rem}th,td{padding:.625rem .75rem}}@media(max-width:768px){.card{padding:1.125rem}th{font-size:.625rem}td{font-size:.75rem}}.sidebar{position:fixed;top:0;left:0;height:100vh;width:var(--sidebar-width);background:var(--glass-bg-solid);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-right:var(--glass-border-subtle);display:flex;flex-direction:column;z-index:100;box-shadow:2px 0 20px #00000014;transition:transform .3s ease-in-out,width .28s cubic-bezier(.4,0,.2,1);overflow:hidden}.sidebar:before{content:"";position:absolute;top:0;right:0;width:3px;height:100%;background:var(--mirror-highlight-gradient);border-radius:0 3px 3px 0;pointer-events:none;opacity:.7}.sidebar-brand{padding:1.125rem 1.25rem;border-bottom:1px solid var(--gray-200);display:flex;align-items:center;gap:.75rem;min-height:68px}.sidebar-brand-icon{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,var(--primary) 0%,#7c3aed 100%);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px #2563eb59;font-weight:800;font-size:.875rem;color:#fff;letter-spacing:-.01em}.sidebar-brand-text{display:flex;flex-direction:column;min-width:0}.sidebar-brand h2{font-size:1rem;font-weight:700;color:var(--gray-900);margin:0;letter-spacing:-.02em;line-height:1.2;white-space:nowrap}.sidebar-brand span{font-size:.625rem;font-weight:600;color:var(--primary);text-transform:uppercase;letter-spacing:.14em;white-space:nowrap}.sidebar-nav{flex:1;padding:.875rem .75rem;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.sidebar-nav-link{display:flex;align-items:center;gap:.75rem;padding:.6875rem .875rem;color:var(--gray-600);text-decoration:none;border-radius:var(--radius);transition:all .18s ease;font-size:.875rem;font-weight:500;position:relative;overflow:hidden}.sidebar-nav-link:hover{background-color:var(--gray-100);color:var(--gray-900);transform:translate(2px)}.sidebar-nav-link.active{background-color:var(--primary-light);color:var(--primary);font-weight:600}.sidebar-nav-link.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:var(--primary);border-radius:0 3px 3px 0}.sidebar-nav-group{display:flex;flex-direction:column;gap:2px}.sidebar-nav-group-toggle{width:100%;background:none;border:none;text-align:left;cursor:pointer}.sidebar-nav-group-chevron{margin-left:auto;transition:transform .2s ease;color:var(--gray-500);flex-shrink:0}.sidebar-nav-group.open>.sidebar-nav-group-toggle .sidebar-nav-group-chevron{transform:rotate(180deg)}.sidebar-nav-group-children{display:flex;flex-direction:column;gap:2px;margin:2px 0 4px;padding-left:1.5rem;border-left:1px solid var(--gray-200);margin-left:1.125rem}.sidebar-nav-child-link{padding:.6875rem .875rem}.sidebar-footer{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.125rem;border-top:1px solid var(--gray-200);background:var(--gray-50);min-height:64px}.sidebar-footer-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0%,#7c3aed 100%);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#fff;flex-shrink:0;letter-spacing:.03em;box-shadow:0 2px 8px #2563eb4d}.sidebar-footer-icon{display:flex;align-items:center;justify-content:center;color:var(--gray-500);flex-shrink:0}.sidebar-footer-info{display:flex;flex-direction:column;min-width:0;overflow:hidden}.sidebar-user{font-size:.8125rem;font-weight:600;color:var(--gray-900);margin:0 0 .1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-role{font-size:.6875rem;color:var(--gray-500);margin:0;white-space:nowrap}html[data-theme=dark] .sidebar-footer{background:#0e152a99}@media(min-width:769px){.sidebar:not(.open){width:var(--sidebar-collapsed-width)}.sidebar:not(.open) .sidebar-brand{padding:1.125rem 0;justify-content:center}.sidebar:not(.open) .sidebar-brand-text{display:none}.sidebar:not(.open) .sidebar-nav{padding:.875rem .5rem;align-items:center}.sidebar:not(.open) .sidebar-nav-link{justify-content:center;padding:.75rem;gap:0;width:44px}.sidebar:not(.open) .sidebar-nav-link:hover{transform:none}.sidebar:not(.open) .sidebar-nav-link span{display:none}.sidebar:not(.open) .sidebar-nav-group-chevron{display:none}.sidebar:not(.open) .sidebar-nav-group-children{display:none}.sidebar:not(.open) .sidebar-nav-group-toggle{width:44px}.sidebar:not(.open) .sidebar-nav-link.active:before{height:44px;top:0;transform:none}.sidebar:not(.open) .sidebar-footer{justify-content:center;padding:1rem .5rem}.sidebar:not(.open) .sidebar-user,.sidebar:not(.open) .sidebar-role{display:none}}@media(max-width:768px){.sidebar{transform:translate(-100%);box-shadow:none}.sidebar.open{transform:translate(0);box-shadow:var(--shadow-lg)}}.navbar{height:var(--navbar-height);background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-bottom:var(--glass-border-subtle);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:50}.navbar:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:var(--mirror-highlight-gradient);opacity:.6}.navbar-content{height:100%;padding:0 1.25rem 0 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.navbar-menu-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:transparent;border:none;border-radius:var(--radius);color:var(--gray-600);cursor:pointer;transition:background .2s ease,color .2s ease;flex-shrink:0}.navbar-menu-btn:hover{background:var(--gray-100);color:var(--primary)}.navbar-title{font-size:.9375rem;font-weight:500;color:var(--gray-600);margin:0;letter-spacing:-.01em;flex:1}.navbar-actions{display:flex;align-items:center;gap:1rem}.navbar-icon-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:transparent;border:none;border-radius:var(--radius);color:var(--gray-600);cursor:pointer;transition:all .2s ease;position:relative}.navbar-icon-btn:hover{background-color:var(--gray-100);color:var(--gray-900)}.navbar-notification-wrap{position:relative}.navbar-notification-badge{position:absolute;top:4px;right:4px;min-width:18px;height:18px;padding:0 5px;font-size:.7rem;font-weight:600;color:#fff;background:var(--danger);border-radius:999px;display:flex;align-items:center;justify-content:center}.navbar-notification-dropdown{position:absolute;top:calc(100% + .5rem);right:0;width:360px;max-width:calc(100vw - 2rem);background:var(--glass-bg-solid);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:var(--glass-border-subtle);z-index:100;overflow:hidden}.navbar-notification-dropdown:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--mirror-highlight-gradient);border-radius:var(--radius-lg) var(--radius-lg) 0 0;pointer-events:none}.navbar-notification-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--gray-200);font-weight:600;font-size:.9375rem;color:var(--gray-900)}.navbar-notification-mark-all{display:flex;align-items:center;gap:.35rem;padding:.35rem .5rem;font-size:.75rem;font-weight:500;color:var(--primary);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer}.navbar-notification-mark-all:hover:not(:disabled){background:var(--primary-light)}.navbar-notification-list{max-height:320px;overflow-y:auto}.navbar-notification-empty{padding:1.5rem 1rem;text-align:center;color:var(--gray-500);font-size:.875rem;margin:0}.navbar-notification-item{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid var(--gray-100);cursor:pointer;transition:background .15s ease}.navbar-notification-item:hover{background:var(--gray-50)}.navbar-notification-item.unread{background:var(--primary-light)}.navbar-notification-item-content{flex:1;min-width:0}.navbar-notification-item-content strong{display:block;font-size:.875rem;color:var(--gray-900);margin-bottom:.2rem}.navbar-notification-item-content p{font-size:.8125rem;color:var(--gray-600);margin:0 0 .25rem;line-height:1.4}.navbar-notification-time{font-size:.75rem;color:var(--gray-500)}.navbar-notification-item-read{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:none;border-radius:var(--radius);color:var(--primary);cursor:pointer}.navbar-notification-item-read:hover:not(:disabled){background:#3182ce26}.navbar-theme-btn{display:flex;align-items:center;gap:.4rem;padding:.44rem .9rem;background:var(--gray-100);border:1px solid var(--gray-200);border-radius:999px;color:var(--gray-700);font-size:.775rem;font-weight:600;font-family:inherit;cursor:pointer;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .15s ease}.navbar-theme-btn:hover{background:var(--gray-200);color:var(--gray-900);transform:translateY(-1px)}.navbar-user-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0%,#7c3aed 100%);display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;color:#fff;flex-shrink:0;letter-spacing:.03em;box-shadow:0 2px 8px #2563eb4d;cursor:default;-webkit-user-select:none;user-select:none}.navbar-logout-btn{display:flex;align-items:center;gap:.4rem;padding:.44rem .875rem;background-color:#fee2e2;border:1px solid #fecaca;border-radius:var(--radius);color:#dc2626;font-size:.8125rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s ease}.navbar-logout-btn:hover{background-color:#fecaca;border-color:#fca5a5;color:#b91c1c;transform:translateY(-1px)}html[data-theme=dark] .navbar-logout-btn{background-color:#ef44441f;border-color:#ef444440;color:#f87171}html[data-theme=dark] .navbar-logout-btn:hover{background-color:#ef444438;border-color:#ef444466;color:#fca5a5}@media(max-width:768px){.navbar-content{padding:0 .75rem 0 1rem}.navbar-title{font-size:1rem}.navbar-theme-btn span,.navbar-logout-btn span,.navbar-user-avatar{display:none}}:root{--sidebar-collapsed-width: 64px}.dashboard-layout{display:flex;min-height:100vh;background:var(--bg-page);background-attachment:var(--bg-page-attachment);position:relative}.dashboard-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:90;opacity:0;transition:opacity .3s ease-in-out;pointer-events:none}.dashboard-overlay.open{display:block;opacity:1;pointer-events:auto}@media(min-width:769px){.dashboard-overlay{display:none!important;pointer-events:none!important}}.dashboard-main{flex:1;margin-left:var(--sidebar-width);min-width:0;transition:margin-left .3s ease-in-out}.dashboard-layout.sidebar-closed .dashboard-main{margin-left:var(--sidebar-collapsed-width)}.dashboard-content{padding:1.75rem 2rem;min-height:calc(100vh - var(--navbar-height));position:relative;background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border-radius:var(--radius-xl);margin:0 .5rem .5rem;border:var(--glass-border-subtle);box-shadow:var(--shadow);overflow-x:hidden;overflow-y:auto}.dashboard-content:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--mirror-highlight-gradient);border-radius:var(--radius-xl) var(--radius-xl) 0 0;pointer-events:none}.dashboard-content:after{content:"";position:absolute;left:0;right:0;bottom:0;height:var(--mirror-reflection-height, 28%);background:var(--mirror-reflection-gradient);pointer-events:none}@media(max-width:768px){.dashboard-main,.dashboard-layout.sidebar-closed .dashboard-main{margin-left:0}.dashboard-content{padding:1rem}}
