@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Inter:wght@300;400;500;600&display=swap";.sidebar{width:var(--sidebar-width);z-index:100;padding:var(--space-md) var(--space-lg);background:var(--bg-sidebar);-webkit-backdrop-filter:blur(20px);border-right:1px solid var(--glass-border);transition:width var(--transition-normal), transform var(--transition-normal), background var(--transition-normal);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden;box-shadow:4px 0 24px #00000008}.sidebar-header{padding:var(--space-md) 0 var(--space-xl);justify-content:space-between;align-items:center;min-height:60px;display:flex}.sidebar-logo{color:var(--text-primary);letter-spacing:-1px;font-size:1.6rem;font-weight:700}.sidebar-toggle{color:var(--text-primary);cursor:pointer;border-radius:var(--radius-full);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;display:flex}.sidebar-toggle:hover{background:#0000000d}body.dark-theme .sidebar-toggle:hover{background:#ffffff14}.sidebar.collapsed{width:var(--sidebar-mini-width);padding:var(--space-md) var(--space-sm)}.sidebar.collapsed .brand-text,.sidebar.collapsed .nav-item span,.sidebar.collapsed .section-title{display:none}.sidebar.collapsed .sidebar-header{justify-content:center}.sidebar.collapsed .nav-item{justify-content:center;width:50px;height:50px;margin:0 auto}.sidebar.collapsed .user-info-text,.sidebar.collapsed .logout-btn{display:none}.sidebar.collapsed .user-profile-card{background:0 0;border-color:#0000;justify-content:center;padding:4px}@media (width<=1024px){.sidebar{transform:translate(-100%);width:var(--sidebar-width)!important}.sidebar.is-open{transform:translate(0)}}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:95;background:#0009;position:fixed;inset:0}.sidebar-nav{gap:var(--space-xl);flex-direction:column;flex:1;padding-right:4px;display:flex;overflow:hidden auto}.sidebar-nav::-webkit-scrollbar{width:3px}.sidebar-nav::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}.nav-section{flex-direction:column;gap:2px;display:flex}.section-title{color:var(--text-muted);padding:var(--space-md) var(--space-md) var(--space-xs);letter-spacing:.5px;font-size:.8rem;font-weight:800}.nav-item{align-items:center;gap:var(--space-lg);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:12px;width:100%;margin-bottom:2px;padding:10px 16px;font-size:.95rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.nav-item span{letter-spacing:-.2px;font-weight:500}.nav-item:hover{background:rgba(var(--brand-secondary-rgb,59, 130, 246), .08);color:var(--brand-secondary);transform:translate(4px)}.nav-item.active{background:rgba(var(--brand-secondary-rgb,59, 130, 246), .1);color:var(--brand-secondary);font-weight:700}.nav-item.active span{font-weight:700}.nav-item.active:before{content:"";background:var(--brand-secondary);width:4px;box-shadow:2px 0 8px rgba(var(--brand-secondary-rgb,59, 130, 246), .4);border-radius:0 4px 4px 0;position:absolute;top:20%;bottom:20%;left:-4px}.sidebar-footer{padding:var(--space-lg) 0;border-top:1px solid var(--glass-border);gap:var(--space-xs);flex-direction:column;margin-top:auto;display:flex}.user-profile-card{border-radius:var(--radius-md);background:var(--bg-main);border:1px solid var(--border);transition:all var(--transition-fast);align-items:center;gap:12px;padding:8px;display:flex}.user-avatar{background:var(--brand-secondary);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;font-weight:700;display:flex}.user-info-text{flex-direction:column;flex:1;min-width:0;display:flex}.user-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.user-email{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.logout-btn{color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;display:flex}.logout-btn:hover{color:var(--danger);background:#f4212e1a}body.dark-theme .sidebar{box-shadow:none;border-right:1px solid var(--glass-border)}.header{height:var(--header-height);z-index:90;padding:0 var(--space-xl);background:var(--bg-header);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--glass-border);transition:left var(--transition-normal);justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;right:0}.shell.sidebar-expanded .header{left:var(--sidebar-width)}.shell.sidebar-collapsed .header{left:var(--sidebar-mini-width)}.left-group{align-items:center;gap:var(--space-md);display:flex}@media (width<=1024px){.header{padding:0 var(--space-lg);left:0!important}}.menu-btn{color:var(--text-primary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;margin-left:-10px;padding:10px;display:flex}.menu-btn:hover{background:#0000000d;transform:scale(1.05)}body.dark-theme .menu-btn:hover{background:#ffffff14}.search-wrapper{width:400px;position:relative}.search-bar{align-items:center;gap:var(--space-md);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-full);border:1px solid var(--glass-border);width:100%;color:var(--text-muted);transition:background var(--transition-fast), border-color var(--transition-fast);background:#0000000a;display:flex}.search-bar:focus-within{border-color:rgba(var(--brand-secondary-rgb,59, 130, 246), .35);border-radius:var(--radius-md);background:#0000000f}body.dark-theme .search-bar{background:#ffffff0d}body.dark-theme .search-bar:focus-within{background:#ffffff14}.search-icon-btn{cursor:pointer;color:var(--text-secondary);border-radius:var(--radius-full);transition:background var(--transition-fast), color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;display:none}.search-icon-btn:hover{background:var(--glass-border);color:var(--text-primary)}@media (width<=1024px){.user-info{display:none}.search-icon-btn{display:flex}.search-bar{top:calc(var(--header-height) - 8px);border-radius:var(--radius-md);z-index:95;width:calc(100% - 32px);margin:0 16px;display:none;position:absolute;left:0;right:0}.search-bar--expanded{display:flex}.search-wrapper{position:static}}@media (width<=640px){.search-icon-btn,.search-wrapper{display:none}}.search-bar input{color:var(--text-primary);background:0 0;border:none;outline:none;width:100%;font-family:inherit}.search-dropdown{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--card-shadow-hover);z-index:200;max-height:420px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:hidden auto}.search-empty{color:var(--text-muted);text-align:center;padding:16px;font-size:.85rem}.search-group{border-bottom:1px solid var(--glass-border);padding:8px 0 4px}.search-group:last-child{border-bottom:none}.search-group-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);align-items:center;gap:5px;padding:2px 14px 6px;font-size:.7rem;font-weight:700;display:flex}.search-item{cursor:pointer;text-align:left;width:100%;transition:background var(--transition-fast);background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;padding:8px 14px;display:flex}.search-item:hover{background:rgba(var(--brand-secondary-rgb,59, 130, 246), .07)}body.dark-theme .search-item:hover{background:#ffffff0d}.search-item-main{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.875rem;font-weight:500;overflow:hidden}.search-item-sub{color:var(--text-muted);white-space:nowrap;flex-shrink:0;font-size:.75rem}.header-actions{align-items:center;gap:var(--space-xl);display:flex}.action-btn{color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;position:relative}.action-btn:hover{color:var(--text-primary)}.notification-dot{background-color:var(--danger);border:2px solid var(--bg-main);border-radius:50%;width:8px;height:8px;position:absolute;top:-2px;right:-2px}.user-profile{align-items:center;gap:var(--space-md);padding-left:var(--space-xl);border-left:1px solid var(--glass-border);display:flex}.user-info{text-align:right;flex-direction:column;display:flex}.user-name{font-size:.9rem;font-weight:600}.user-role{color:var(--text-muted);font-size:.75rem}.avatar{background:var(--brand-secondary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:.9rem;font-weight:700;display:flex}.header-menu-btn{cursor:pointer;color:var(--text-primary);border-radius:var(--radius-full);transition:background var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:8px;display:none}.header-menu-btn:hover{background:#0000000d}body.dark-theme .header-menu-btn:hover{background:#ffffff14}@media (width<=1024px){.header-menu-btn{display:flex}}.shell{width:100%;min-height:100vh;display:flex}.content-wrapper{flex-direction:column;flex:1;width:100%;display:flex}main{padding-top:var(--header-height);transition:margin-left var(--transition-normal);flex:1}@media (width>=1025px){.shell.sidebar-expanded main{margin-left:var(--sidebar-width)}.shell.sidebar-collapsed main{margin-left:var(--sidebar-mini-width)}}@media (width<=1024px){main{margin-left:0!important}}.view-container{padding:var(--space-xl);width:100%;max-width:1400px;margin:0 auto}@media (width<=1024px){.view-container{padding:var(--space-lg)}}@media (width<=768px){.view-container{padding:var(--space-md)}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-main:#dde3ed;--bg-card:#edf1f7;--bg-sidebar:#e4eaf4fa;--bg-header:#e4eaf4e6;--glass-bg:#dce4f0d9;--brand-primary:#0f172a;--brand-secondary:#3b82f6;--brand-secondary-rgb:59, 130, 246;--brand-accent:#6366f1;--text-active:#000;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--error:#ef4444;--info:#3b82f6;--border:#0000001f;--glass-border:#fff9;--glass-highlight:#ffffffb3;--card-shadow:0 1px 3px #00000012, 0 4px 16px -4px #0000001a, 0 12px 32px -8px #00000012;--card-shadow-hover:0 4px 8px #00000014, 0 12px 32px -4px #00000021, 0 24px 48px -12px #00000017;--sidebar-width:260px;--sidebar-mini-width:80px;--header-height:70px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-full:9999px;--space-unit:4px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--transition-fast:.15s ease;--transition-normal:.25s ease}.dark-theme{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-main:#000;--bg-card:#16181cb3;--bg-sidebar:#000;--bg-header:#000000a6;--glass-bg:#16181cb3;--brand-primary:#1d9bf0;--brand-secondary:#8b5cf6;--brand-secondary-rgb:139, 92, 246;--text-active:#eff3f4;--text-primary:#fff;--text-secondary:#71767b;--text-muted:#536471;--border:#ffffff1c;--glass-border:#ffffff1c;--glass-highlight:#ffffff08;--card-shadow:0 8px 32px 0 #0000005e;--card-shadow-hover:0 16px 48px #00000080}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-primary);min-height:100vh;transition:background-color var(--transition-normal), color var(--transition-normal);background-image:radial-gradient(at 0 0,#3b82f614 0,#0000 55%),radial-gradient(at 100% 0,#8b5cf60f 0,#0000 55%),radial-gradient(at 50% 100%,#10b9810a 0,#0000 50%);font-family:Inter,sans-serif;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,.brand-font{letter-spacing:-.02em;font-family:Outfit,sans-serif;font-weight:600}hr{border:none;border-top:1px solid var(--glass-border);margin:var(--space-lg) 0}.glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px)saturate(180%);border:1px solid var(--glass-border);box-shadow:var(--card-shadow), inset 0 1px 0 var(--glass-highlight);transition:background var(--transition-normal), border var(--transition-normal), box-shadow var(--transition-normal)}.text-gradient{background:linear-gradient(135deg, var(--brand-primary) 0%, var(--text-secondary) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#64748b59 padding-box padding-box;border:2px solid #0000;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#64748b8c padding-box padding-box}body.dark-theme ::-webkit-scrollbar-thumb{background:#ffffff26 padding-box padding-box}body.dark-theme ::-webkit-scrollbar-thumb:hover{background:#ffffff47 padding-box padding-box}*{scrollbar-width:thin;scrollbar-color:var(--text-muted) transparent}.module-container{animation:.4s ease-out fade-in}@keyframes fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.skeleton-box{border-radius:var(--radius-sm);background:linear-gradient(90deg,#64748b1a 25%,#64748b33 50%,#64748b1a 75%) 0 0/400% 100%;animation:1.5s ease-in-out infinite skeleton-loading}body.dark-theme .skeleton-box{background:linear-gradient(90deg,#ffffff0a 25%,#ffffff1a 50%,#ffffff0a 75%) 0 0/400% 100%}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.hover-lift:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-1px)}.table-row-hover:hover{background:rgba(var(--brand-secondary-rgb,59,130,246), .04)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not([type=file]),select,textarea{background:var(--bg-main);border-radius:var(--radius-sm);color:var(--text-primary);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);box-sizing:border-box;border:1px solid #00000021;outline:none;width:100%;padding:.55rem .8rem;font-family:inherit;font-size:.9rem;line-height:1.5}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not([type=file]):focus,select:focus,textarea:focus{border-color:rgba(var(--brand-secondary-rgb,59, 130, 246), .65);box-shadow:0 0 0 3px rgba(var(--brand-secondary-rgb,59, 130, 246), .1)}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:disabled,select:disabled,textarea:disabled{background:var(--border);cursor:not-allowed;opacity:.65}select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right .65rem center;background-repeat:no-repeat;background-size:15px;padding-right:2.2rem}select option{background:var(--bg-card);color:var(--text-primary)}body.dark-theme input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]):not([type=file]),body.dark-theme select,body.dark-theme textarea{background-color:#ffffff0d;border-color:#ffffff1a}body.dark-theme select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2371767b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right .65rem center;background-repeat:no-repeat;background-size:15px}.search-bar input{width:auto;box-shadow:none!important;background:0 0!important;border:none!important;padding:0!important}.input-group{flex-direction:column;gap:5px;display:flex}.input-group>label{color:var(--text-secondary);letter-spacing:.01em;font-size:.8rem;font-weight:500}.page-header{justify-content:space-between;align-items:center;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.form-grid-2{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}@media (width<=600px){.form-grid-2{grid-template-columns:1fr}}
