@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--bg-primary:#0a0a0f;--bg-secondary:#12121a;--bg-tertiary:#1a1a2e;--bg-hover:#22223a;--accent-primary:#6c63ff;--accent-primary-hover:#7b73ff;--accent-primary-light:#6c63ff26;--accent-secondary:#00d4aa;--accent-secondary-hover:#00e6b8;--accent-warning:#ffa726;--accent-danger:#ef5350;--accent-danger-hover:#f44336;--accent-info:#42a5f5;--text-primary:#e8e8ef;--text-secondary:#8888a0;--text-tertiary:#555568;--text-inverse:#0a0a0f;--glass-bg:#ffffff0a;--glass-bg-hover:#ffffff12;--glass-border:#ffffff14;--glass-border-hover:#ffffff24;--gradient-primary:linear-gradient(135deg, #6c63ff 0%, #4a42d4 100%);--gradient-accent:linear-gradient(135deg, #6c63ff 0%, #00d4aa 100%);--gradient-surface:linear-gradient(180deg, #ffffff0f 0%, #ffffff05 100%);--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--line-height:1.6;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 24px #00000080;--shadow-xl:0 16px 48px #0009;--shadow-glow:0 0 20px #6c63ff4d;--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.4s ease;--sidebar-width:260px;--sidebar-collapsed:72px;--header-height:64px;--content-max-width:1200px;--z-dropdown:100;--z-sticky:200;--z-overlay:300;--z-modal:400;--z-toast:500}[data-theme=light]{--bg-primary:#f5f5fa;--bg-secondary:#fff;--bg-tertiary:#e8e8f0;--bg-hover:#dddde8;--text-primary:#1a1a2e;--text-secondary:#6b6b80;--text-tertiary:#99a;--text-inverse:#fff;--glass-bg:#ffffffb3;--glass-bg-hover:#ffffffd9;--glass-border:#00000014;--glass-border-hover:#00000024;--gradient-surface:linear-gradient(180deg, #ffffffe6 0%, #fff9 100%);--shadow-sm:0 1px 2px #0000000f;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 24px #0000001f;--shadow-xl:0 16px 48px #00000029;--shadow-glow:0 0 20px #6c63ff26}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;font-size:16px}body{min-height:100vh;line-height:var(--line-height);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none}table{border-collapse:collapse;border-spacing:0}h1,h2,h3,h4,h5,h6{overflow-wrap:break-word;font-weight:var(--font-semibold)}p{overflow-wrap:break-word}#root{isolation:isolate;min-height:100vh}body{font-family:var(--font-family);background-color:var(--bg-primary);color:var(--text-primary);transition:background-color var(--transition-base), color var(--transition-base)}::selection{background-color:var(--accent-primary);color:#fff}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.text-gradient{background:var(--gradient-accent);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn var(--transition-base) ease forwards}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fadeInUp var(--transition-slow) ease forwards}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.animate-slide-in-left{animation:slideInLeft var(--transition-slow) ease forwards}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.animate-slide-in-right{animation:slideInRight var(--transition-slow) ease forwards}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-scale-in{animation:scaleIn var(--transition-base) ease forwards}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:2s ease-in-out infinite pulse}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-shimmer{background:linear-gradient(90deg, var(--glass-bg) 25%, var(--glass-bg-hover) 50%, var(--glass-bg) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.stagger-children>*{opacity:0;animation:fadeInUp var(--transition-slow) ease forwards}.stagger-children>:first-child{animation-delay:0s}.stagger-children>:nth-child(2){animation-delay:60ms}.stagger-children>:nth-child(3){animation-delay:.12s}.stagger-children>:nth-child(4){animation-delay:.18s}.stagger-children>:nth-child(5){animation-delay:.24s}.stagger-children>:nth-child(6){animation-delay:.3s}.stagger-children>:nth-child(7){animation-delay:.36s}.stagger-children>:nth-child(8){animation-delay:.42s}.toast-container{top:var(--space-lg);right:var(--space-lg);gap:var(--space-sm);z-index:var(--z-toast);pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast{align-items:flex-start;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);min-width:300px;max-width:420px;animation:.3s slideInRight;display:flex}.toast-icon{font-size:var(--text-xl);flex-shrink:0}.toast-content{flex:1}.toast-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.toast-message{font-size:var(--text-xs);color:var(--text-secondary);margin-top:2px}.toast-close{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--text-tertiary);font-size:var(--text-sm);transition:all var(--transition-fast);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;display:flex}.toast-close:hover{background:var(--glass-bg);color:var(--text-primary)}.toast-success{border-left:3px solid var(--accent-secondary)}.toast-error{border-left:3px solid var(--accent-danger)}.toast-warning{border-left:3px solid var(--accent-warning)}.toast-info{border-left:3px solid var(--accent-info)}.toast-exit{animation:.2s forwards fadeOut}@keyframes fadeOut{to{opacity:0;transform:translate(20px)}}.loader-spinner{border:3px solid var(--glass-border);border-top-color:var(--accent-primary);border-radius:50%;width:32px;height:32px;animation:.7s linear infinite spin;display:inline-block}.loader-spinner.sm{border-width:2px;width:18px;height:18px}.loader-spinner.lg{border-width:4px;width:48px;height:48px}.loader-fullpage{justify-content:center;align-items:center;gap:var(--space-md);flex-direction:column;min-height:60vh;display:flex}.loader-fullpage-text{color:var(--text-secondary);font-size:var(--text-sm);animation:2s ease-in-out infinite pulse}.skeleton{background:var(--glass-bg);border-radius:var(--radius-md);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg, transparent 25%, var(--glass-bg-hover) 50%, transparent 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer;position:absolute;inset:0}.skeleton-text{height:14px;margin-bottom:var(--space-sm)}.skeleton-text:last-child{width:70%}.skeleton-title{width:50%;height:22px;margin-bottom:var(--space-md)}.skeleton-avatar{border-radius:var(--radius-full);width:40px;height:40px}.skeleton-card{height:120px}.sidebar{width:var(--sidebar-width);background:var(--bg-secondary);border-right:1px solid var(--glass-border);z-index:var(--z-sticky);transition:width var(--transition-base), transform var(--transition-base);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden}.sidebar-collapsed{width:var(--sidebar-collapsed)}.sidebar-logo{align-items:center;gap:var(--space-sm);padding:var(--space-lg);border-bottom:1px solid var(--glass-border);min-height:var(--header-height);display:flex}.sidebar-logo-icon{border-radius:var(--radius-md);background:var(--gradient-primary);width:36px;height:36px;font-size:var(--text-xl);flex-shrink:0;justify-content:center;align-items:center;display:flex}.sidebar-logo-text{font-size:var(--text-lg);font-weight:var(--font-bold);white-space:nowrap;transition:opacity var(--transition-fast);overflow:hidden}.sidebar-collapsed .sidebar-logo-text{opacity:0;width:0}.sidebar-nav{padding:var(--space-md);flex:1;overflow-y:auto}.sidebar-section-title{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-sm) var(--space-sm);margin-top:var(--space-md);white-space:nowrap;overflow:hidden}.sidebar-collapsed .sidebar-section-title{opacity:0}.sidebar-link{align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);transition:all var(--transition-fast);white-space:nowrap;cursor:pointer;margin-bottom:2px;padding:.5rem .75rem;display:flex}.sidebar-link:hover{background:var(--glass-bg);color:var(--text-primary)}.sidebar-link.active{background:var(--accent-primary-light);color:var(--accent-primary)}.sidebar-link-icon{text-align:center;flex-shrink:0;width:24px;font-size:1.2em}.sidebar-link-text{transition:opacity var(--transition-fast);overflow:hidden}.sidebar-collapsed .sidebar-link-text{opacity:0;width:0}.sidebar-footer{padding:var(--space-md);border-top:1px solid var(--glass-border)}.sidebar-toggle{width:100%;padding:var(--space-sm);border-radius:var(--radius-md);color:var(--text-secondary);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.sidebar-toggle:hover{background:var(--glass-bg);color:var(--text-primary)}.sidebar-overlay{z-index:calc(var(--z-sticky) - 1);background:#00000080;display:none;position:fixed;inset:0}@media (width<=768px){.sidebar{transform:translate(-100%)}.sidebar.sidebar-mobile-open{width:var(--sidebar-width);transform:translate(0)}.sidebar.sidebar-mobile-open .sidebar-logo-text,.sidebar.sidebar-mobile-open .sidebar-link-text,.sidebar.sidebar-mobile-open .sidebar-section-title{opacity:1;width:auto}.sidebar-overlay.visible{display:block}}.header{top:0;right:0;left:var(--sidebar-width);height:var(--header-height);background:var(--bg-secondary);border-bottom:1px solid var(--glass-border);padding:0 var(--space-xl);z-index:var(--z-sticky);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:left var(--transition-base);justify-content:space-between;align-items:center;display:flex;position:fixed}.header-collapsed{left:var(--sidebar-collapsed)}.header-left{align-items:center;gap:var(--space-md);display:flex}.header-hamburger{border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-secondary);font-size:var(--text-xl);transition:all var(--transition-fast);justify-content:center;align-items:center;display:none}.header-hamburger:hover{background:var(--glass-bg);color:var(--text-primary)}.header-title{font-size:var(--text-lg);font-weight:var(--font-semibold)}.header-right{align-items:center;gap:var(--space-md);display:flex}.header-theme-toggle{border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-secondary);font-size:var(--text-lg);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.header-theme-toggle:hover{background:var(--glass-bg);color:var(--text-primary)}.header-user{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);display:flex;position:relative}.header-user:hover{background:var(--glass-bg)}.header-avatar{border-radius:var(--radius-full);background:var(--gradient-accent);width:32px;height:32px;font-size:var(--text-sm);font-weight:var(--font-bold);color:#fff;justify-content:center;align-items:center;display:flex}.header-user-info{flex-direction:column;display:flex}.header-user-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.header-user-role{font-size:var(--text-xs);color:var(--text-tertiary);text-transform:capitalize}.header-dropdown{top:calc(100% + var(--space-xs));background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-lg);min-width:180px;box-shadow:var(--shadow-lg);padding:var(--space-xs);z-index:var(--z-dropdown);animation:.15s scaleIn;position:absolute;right:0}.header-dropdown-item{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-secondary);transition:all var(--transition-fast);cursor:pointer;width:100%;display:flex}.header-dropdown-item:hover{background:var(--glass-bg);color:var(--text-primary)}.header-dropdown-divider{background:var(--glass-border);height:1px;margin:var(--space-xs) 0}.header-dropdown-item.danger{color:var(--accent-danger)}@media (width<=768px){.header{left:0}.header-hamburger{display:flex}.header-user-info{display:none}}.app-layout{min-height:100vh}.app-main{margin-left:var(--sidebar-width);padding-top:var(--header-height);min-height:100vh;transition:margin-left var(--transition-base)}.app-main-collapsed{margin-left:var(--sidebar-collapsed)}.app-content{padding:var(--space-xl);max-width:var(--content-max-width)}@media (width<=768px){.app-main{margin-left:0}.app-content{padding:var(--space-md)}}.input-wrapper{gap:var(--space-xs);flex-direction:column;display:flex}.input-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary)}.input-label .required{color:var(--accent-danger);margin-left:2px}.input-container{align-items:center;display:flex;position:relative}.input-field{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);width:100%;color:var(--text-primary);font-size:var(--text-sm);transition:all var(--transition-fast);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:.625rem .875rem}.input-field:hover{border-color:var(--glass-border-hover)}.input-field:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-primary-light);outline:none}.input-field::placeholder{color:var(--text-tertiary)}.input-container.has-icon-left .input-field{padding-left:2.5rem}.input-container.has-icon-right .input-field{padding-right:2.5rem}.input-icon{color:var(--text-tertiary);font-size:var(--text-lg);pointer-events:none;align-items:center;display:flex;position:absolute}.input-icon-left{left:.75rem}.input-icon-right{pointer-events:auto;cursor:pointer;right:.75rem}.input-field.input-error{border-color:var(--accent-danger)}.input-field.input-error:focus{box-shadow:0 0 0 3px #ef535026}.input-error-message{font-size:var(--text-xs);color:var(--accent-danger)}.input-field.input-success{border-color:var(--accent-secondary)}.btn{justify-content:center;align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:1px solid #0000;padding:.625rem 1.25rem;line-height:1;display:inline-flex;position:relative;overflow:hidden}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:not(:disabled):active{transform:scale(.97)}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:0 2px 8px #6c63ff4d}.btn-primary:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 4px 16px #6c63ff80}.btn-secondary{background:var(--glass-bg);color:var(--text-primary);border-color:var(--glass-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn-secondary:not(:disabled):hover{background:var(--glass-bg-hover);border-color:var(--glass-border-hover)}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:not(:disabled):hover{background:var(--glass-bg);color:var(--text-primary)}.btn-danger{background:var(--accent-danger);color:#fff}.btn-danger:not(:disabled):hover{background:var(--accent-danger-hover)}.btn-sm{font-size:var(--text-xs);padding:.375rem .75rem}.btn-lg{font-size:var(--text-base);padding:.875rem 1.75rem}.btn-full{width:100%}.btn-loading .btn-text{opacity:0}.btn-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.6s linear infinite spin;position:absolute}.btn-icon{align-items:center;font-size:1.1em;display:flex}.auth-page{min-height:100vh;padding:var(--space-xl);background:var(--bg-primary);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.auth-page:before{content:"";background:radial-gradient(circle at 30%,#6c63ff14 0%,#0000 50%),radial-gradient(circle at 70%,#00d4aa0d 0%,#0000 50%);width:200%;height:200%;animation:20s ease-in-out infinite float;position:absolute;top:-50%;left:-50%}@keyframes float{0%,to{transform:translate(0)rotate(0)}33%{transform:translate(2%,-2%)rotate(1deg)}66%{transform:translate(-1%,1%)rotate(-1deg)}}.auth-card{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-2xl);width:100%;max-width:420px;padding:var(--space-2xl);box-shadow:var(--shadow-xl);animation:.5s fadeInUp;position:relative}.auth-header{text-align:center;margin-bottom:var(--space-2xl)}.auth-logo{border-radius:var(--radius-xl);background:var(--gradient-primary);width:56px;height:56px;font-size:var(--text-2xl);margin:0 auto var(--space-md);box-shadow:var(--shadow-glow);justify-content:center;align-items:center;display:flex}.auth-title{font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:var(--space-xs)}.auth-subtitle{color:var(--text-secondary);font-size:var(--text-sm)}.auth-form{gap:var(--space-md);flex-direction:column;display:flex}.auth-error{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);color:var(--accent-danger);font-size:var(--text-sm);text-align:center;background:#ef53501a;border:1px solid #ef535033}.auth-footer{text-align:center;margin-top:var(--space-lg);font-size:var(--text-sm);color:var(--text-secondary)}.auth-footer a{color:var(--accent-primary);font-weight:var(--font-medium);transition:color var(--transition-fast)}.auth-footer a:hover{color:var(--accent-primary-hover)}.card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all var(--transition-base);position:relative;overflow:hidden}.card:before{content:"";background:linear-gradient(90deg, transparent, var(--glass-border-hover), transparent);opacity:0;height:1px;transition:opacity var(--transition-base);position:absolute;top:0;left:0;right:0}.card-hoverable:hover{border-color:var(--glass-border-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-hoverable:hover:before{opacity:1}.card-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.card-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.card-subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin-top:var(--space-xs)}.card-body{color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--line-height)}.card-footer{align-items:center;gap:var(--space-sm);margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--glass-border);display:flex}.card-glow{box-shadow:var(--shadow-glow)}.dashboard{animation:.4s fadeInUp}.dashboard-welcome{margin-bottom:var(--space-2xl)}.dashboard-welcome h2{font-size:var(--text-3xl);font-weight:var(--font-bold);margin-bottom:var(--space-xs)}.dashboard-welcome p{color:var(--text-secondary);font-size:var(--text-base)}.dashboard-stats{gap:var(--space-md);margin-bottom:var(--space-2xl);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.stat-card{padding:var(--space-lg);position:relative;overflow:hidden}.stat-card:after{content:"";opacity:.08;border-radius:0 0 0 100%;width:80px;height:80px;position:absolute;top:0;right:0}.stat-card:first-child:after{background:var(--accent-primary)}.stat-card:nth-child(2):after{background:var(--accent-secondary)}.stat-card:nth-child(3):after{background:var(--accent-warning)}.stat-card:nth-child(4):after{background:var(--accent-info)}.stat-icon{font-size:var(--text-2xl);margin-bottom:var(--space-sm)}.stat-value{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--space-xs)}.stat-label{font-size:var(--text-sm);color:var(--text-secondary)}.stat-change{font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-full);margin-top:var(--space-sm);align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.stat-change.positive{color:var(--accent-secondary);background:#00d4aa1a}.stat-change.negative{color:var(--accent-danger);background:#ef53501a}.dashboard-section-title{font-size:var(--text-xl);font-weight:var(--font-semibold);margin-bottom:var(--space-md)}.activity-list{gap:var(--space-sm);flex-direction:column;display:flex}.activity-item{align-items:center;gap:var(--space-md);padding:var(--space-md);display:flex}.activity-icon{border-radius:var(--radius-md);background:var(--accent-primary-light);width:40px;height:40px;font-size:var(--text-lg);flex-shrink:0;justify-content:center;align-items:center;display:flex}.activity-content{flex:1}.activity-text{font-size:var(--text-sm);color:var(--text-primary)}.activity-time{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:2px}.profile-page{animation:.4s fadeInUp}.profile-grid{gap:var(--space-xl);grid-template-columns:1fr 1fr;display:grid}.profile-section-title{font-size:var(--text-lg);font-weight:var(--font-semibold);margin-bottom:var(--space-lg)}.profile-form{gap:var(--space-md);flex-direction:column;display:flex}.profile-form-actions{justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-sm);display:flex}.profile-avatar-section{align-items:center;gap:var(--space-lg);margin-bottom:var(--space-lg);display:flex}.profile-avatar-large{border-radius:var(--radius-full);background:var(--gradient-accent);width:72px;height:72px;font-size:var(--text-2xl);font-weight:var(--font-bold);color:#fff;flex-shrink:0;justify-content:center;align-items:center;display:flex}.profile-avatar-info h3{font-size:var(--text-lg);font-weight:var(--font-semibold);margin-bottom:var(--space-xs)}.profile-avatar-info p{color:var(--text-secondary);font-size:var(--text-sm)}@media (width<=768px){.profile-grid{grid-template-columns:1fr}}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal);padding:var(--space-md);background:#0009;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-xl);width:100%;max-width:480px;max-height:90vh;box-shadow:var(--shadow-xl);animation:.25s scaleIn;overflow-y:auto}.modal-header{padding:var(--space-lg);border-bottom:1px solid var(--glass-border);justify-content:space-between;align-items:center;display:flex}.modal-title{font-size:var(--text-lg);font-weight:var(--font-semibold)}.modal-close{border-radius:var(--radius-md);width:32px;height:32px;color:var(--text-secondary);font-size:var(--text-xl);transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.modal-close:hover{background:var(--glass-bg);color:var(--text-primary)}.modal-body{padding:var(--space-lg)}.modal-footer{justify-content:flex-end;align-items:center;gap:var(--space-sm);padding:var(--space-lg);border-top:1px solid var(--glass-border);display:flex}.modal-sm .modal-content{max-width:360px}.modal-lg .modal-content{max-width:640px}.modal-xl .modal-content{max-width:800px}.user-management{animation:.4s fadeInUp}.user-management-header{margin-bottom:var(--space-xl);justify-content:space-between;align-items:center;display:flex}.user-management-title{font-size:var(--text-2xl);font-weight:var(--font-bold)}.table-responsive{overflow-x:auto}.user-table{border-collapse:collapse;text-align:left;width:100%}.user-table th,.user-table td{padding:var(--space-md);border-bottom:1px solid var(--glass-border)}.user-table th{font-weight:var(--font-semibold);color:var(--text-secondary);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.05em;background:#00000005}.user-table tbody tr{transition:background var(--transition-fast)}.user-table tbody tr:hover{background:var(--glass-bg)}.user-table td{font-size:var(--text-sm)}.user-avatar-cell{align-items:center;gap:var(--space-sm);display:flex}.user-avatar-small{border-radius:var(--radius-full);background:var(--gradient-primary);color:#fff;width:32px;height:32px;font-size:var(--text-xs);font-weight:var(--font-bold);justify-content:center;align-items:center;display:flex}.user-role-badge{border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:capitalize;padding:2px 8px;display:inline-flex}.user-role-badge.admin{color:var(--accent-primary);background:#6c63ff1a}.user-role-badge.user{color:var(--accent-secondary);background:#00d4aa1a}.user-actions{gap:var(--space-xs);display:flex}.action-btn{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;padding:4px;font-size:1.1rem}.action-btn:hover{background:var(--glass-border);color:var(--text-primary)}.action-btn.delete:hover{color:var(--accent-danger);background:#ef53501a}.pagination{margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);justify-content:space-between;align-items:center;display:flex}.pagination-info{font-size:var(--text-sm);color:var(--text-secondary)}.pagination-controls{gap:var(--space-sm);display:flex}
