:root{--color-primary: #3b82f6;--color-primary-hover: #2563eb;--color-primary-light: #dbeafe;--color-success: #10b981;--color-success-light: #d1fae5;--color-warning: #f59e0b;--color-warning-light: #fef3c7;--color-danger: #ef4444;--color-danger-light: #fee2e2;--color-info: #06b6d4;--color-info-light: #cffafe;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--sidebar-bg: #1e293b;--sidebar-text: #cbd5e1;--sidebar-text-active: #ffffff;--sidebar-hover: #334155;--sidebar-active: #3b82f6;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--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 -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);color:var(--color-gray-900);background:var(--color-gray-50)}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;line-height:1.6}a{color:inherit;text-decoration:none}.appShell{display:grid;grid-template-columns:260px 1fr;min-height:100vh;background:var(--color-gray-50)}.sidebar{background:var(--sidebar-bg);color:var(--sidebar-text);box-shadow:var(--shadow-lg);position:sticky;top:0;height:100vh;overflow-y:auto;display:flex;flex-direction:column}.sidebar-content{flex:1;padding:var(--spacing-lg) 0;overflow-y:auto}.brand{font-weight:700;font-size:18px;margin:0 var(--spacing-lg) var(--spacing-xl);color:var(--sidebar-text-active);display:flex;align-items:center;gap:var(--spacing-sm)}.brand:before{content:"🐦";font-size:24px}.nav{padding:0 var(--spacing-md)}.nav a{display:flex;align-items:center;gap:var(--spacing-md);padding:12px var(--spacing-md);border-radius:var(--radius-md);color:var(--sidebar-text);margin-bottom:var(--spacing-xs);transition:all .2s ease;font-size:14px;font-weight:500}.nav a:hover{background:var(--sidebar-hover);color:var(--sidebar-text-active)}.nav a.active{background:var(--sidebar-active);color:var(--sidebar-text-active);box-shadow:var(--shadow-md)}.nav a:before{content:"";width:20px;height:20px;display:inline-block;opacity:.8}.nav a[href*=dashboard]:before{content:"📊"}.nav a[href*=stats]:before{content:"📈"}.nav a[href*=reports]:before{content:"🚨"}.nav a[href*=users]:before{content:"👥"}.nav a[href*=config]:before{content:"⚙️"}.nav a[href*=audit]:before{content:"📋"}.nav a[href*=invites]:before{content:"🎁"}.sidebar-footer{padding:var(--spacing-md);border-top:1px solid var(--sidebar-hover);background:#0003}.sidebar-user{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--sidebar-hover);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm)}.sidebar-user-avatar{width:40px;height:40px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;flex-shrink:0}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{font-weight:600;font-size:14px;color:var(--sidebar-text-active);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-role{font-size:12px;color:var(--sidebar-text);opacity:.8}.sidebar-logout{width:100%;background:transparent;border:1px solid var(--sidebar-hover);color:var(--sidebar-text);padding:10px var(--spacing-md);border-radius:var(--radius-md);font-size:13px;margin-bottom:var(--spacing-sm);transition:all .2s ease}.sidebar-logout:hover{background:var(--sidebar-hover);border-color:var(--color-danger);color:var(--color-danger)}.sidebar-version{text-align:center;font-size:11px;color:var(--sidebar-text);opacity:.5;padding:var(--spacing-xs) 0}.content{padding:var(--spacing-xl);max-width:1400px}.card{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-lg);transition:box-shadow .2s ease}.card:hover{box-shadow:var(--shadow-md)}.card h3{margin:0 0 var(--spacing-md) 0;font-size:16px;font-weight:600;color:var(--color-gray-900)}.row{display:flex;gap:var(--spacing-md);align-items:center;flex-wrap:wrap}.grid{display:grid;gap:var(--spacing-lg)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}label{display:block;font-size:13px;font-weight:500;color:var(--color-gray-700);margin-bottom:var(--spacing-xs)}input,select,textarea{width:100%;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);padding:10px 14px;font-size:14px;outline:none;background:#fff;transition:all .2s ease;font-family:inherit}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}input:disabled,select:disabled,textarea:disabled{background:var(--color-gray-100);cursor:not-allowed}textarea{min-height:100px;resize:vertical}button{border:1px solid var(--color-gray-300);background:#fff;border-radius:var(--radius-md);padding:10px 20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:var(--spacing-sm);font-family:inherit}button:hover{background:var(--color-gray-50);border-color:var(--color-gray-400)}button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}button.primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}button.success{background:var(--color-success);color:#fff;border-color:var(--color-success)}button.danger{background:var(--color-danger);color:#fff;border-color:var(--color-danger)}button.danger:hover{background:#dc2626;border-color:#dc2626}button.small{padding:6px 12px;font-size:13px}.error{color:var(--color-danger);font-size:13px;margin-top:var(--spacing-sm)}.success{color:var(--color-success);font-size:13px;margin-top:var(--spacing-sm)}.muted{color:var(--color-gray-500);font-size:14px}table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}th,td{padding:14px 16px;border-bottom:1px solid var(--color-gray-100);text-align:left;font-size:14px}th{background:var(--color-gray-50);font-weight:600;color:var(--color-gray-700);text-transform:uppercase;font-size:12px;letter-spacing:.5px}tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--color-gray-50)}.pill{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:500;border:1px solid}.pill.pending{background:var(--color-warning-light);border-color:var(--color-warning);color:#92400e}.pill.resolved{background:var(--color-success-light);border-color:var(--color-success);color:#065f46}.pill.active{background:var(--color-info-light);border-color:var(--color-info);color:#164e63}.pill.inactive{background:var(--color-gray-100);border-color:var(--color-gray-300);color:var(--color-gray-600)}.stat-card{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:all .2s ease}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-card .stat-label{font-size:13px;color:var(--color-gray-500);font-weight:500;margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.5px}.stat-card .stat-value{font-size:32px;font-weight:700;color:var(--color-gray-900);margin-bottom:var(--spacing-xs)}.stat-card .stat-change{font-size:13px;font-weight:500}.stat-card .stat-change.positive{color:var(--color-success)}.stat-card .stat-change.negative{color:var(--color-danger)}h1,h2,h3,h4,h5,h6{color:var(--color-gray-900);font-weight:600;line-height:1.3}h1{font-size:28px;margin-bottom:var(--spacing-lg)}h2{font-size:24px;margin-bottom:var(--spacing-md)}h3{font-size:18px;margin-bottom:var(--spacing-md)}.loading{display:inline-block;width:20px;height:20px;border:3px solid var(--color-gray-200);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:var(--spacing-xl) var(--spacing-lg);color:var(--color-gray-500)}.empty-state-icon{font-size:64px;margin-bottom:var(--spacing-md);opacity:.6;filter:grayscale(.3)}.empty-state-title{font-size:18px;font-weight:600;color:var(--color-gray-700);margin-bottom:var(--spacing-sm)}.empty-state-description{font-size:14px;color:var(--color-gray-500);max-width:400px;margin:0 auto}.filter-bar{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm)}.filter-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.filter-field{display:flex;flex-direction:column}.filter-field label{margin-bottom:var(--spacing-xs)}.filter-actions{display:flex;align-items:center;gap:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-gray-100)}.filter-info{display:flex;align-items:center;gap:var(--spacing-sm);font-size:14px;color:var(--color-gray-600)}.filter-info strong{color:var(--color-primary);font-weight:600}.filter-error{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-danger-light);border:1px solid var(--color-danger);border-radius:var(--radius-md);color:var(--color-danger);font-size:14px}.pagination{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding:var(--spacing-md) 0}.pagination-btn{min-width:100px}.pagination-pages{display:flex;gap:var(--spacing-xs);align-items:center}.pagination-page{min-width:40px;height:40px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);font-weight:500}.pagination-page.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.pagination-ellipsis{padding:0 var(--spacing-sm);color:var(--color-gray-400)}.table-wrapper{background:#fff;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}table{margin:0;border:none;box-shadow:none}table code{background:var(--color-gray-100);padding:2px 6px;border-radius:4px;font-size:12px;font-family:Monaco,Menlo,Courier New,monospace;color:var(--color-gray-700)}table pre{background:var(--color-gray-50);padding:var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid var(--color-gray-200)}table a{color:var(--color-primary);text-decoration:none;font-weight:500;transition:color .2s ease}table a:hover{color:var(--color-primary-hover);text-decoration:underline}.stat-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.stat-card-icon{font-size:32px;margin-bottom:var(--spacing-sm);opacity:.8}.stat-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.stat-card-trend{display:flex;align-items:center;gap:var(--spacing-xs);font-size:12px;font-weight:600;padding:4px 8px;border-radius:var(--radius-sm)}.stat-card-trend.up{background:var(--color-success-light);color:var(--color-success)}.stat-card-trend.down{background:var(--color-danger-light);color:var(--color-danger)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.page-header h1{margin:0}.page-header-actions{display:flex;gap:var(--spacing-sm)}.tag-group{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.tag{display:inline-flex;align-items:center;padding:4px 10px;background:var(--color-gray-100);border:1px solid var(--color-gray-300);border-radius:var(--radius-sm);font-size:12px;font-weight:500;color:var(--color-gray-700)}.info-card{background:var(--color-info-light);border:1px solid var(--color-info);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.info-card-title{font-weight:600;color:var(--color-info);margin-bottom:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-sm)}.warning-card{background:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.warning-card-title{font-weight:600;color:#92400e;margin-bottom:var(--spacing-xs);display:flex;align-items:center;gap:var(--spacing-sm)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:var(--spacing-sm)}.form-group-inline{display:flex;gap:var(--spacing-md);align-items:flex-end}.form-group-inline>*{flex:1}.button-group{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.button-group button{flex:0 0 auto}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--color-danger);color:#fff;border-radius:10px;font-size:11px;font-weight:700;line-height:1}.badge.primary{background:var(--color-primary)}.badge.success{background:var(--color-success)}.badge.warning{background:var(--color-warning)}.progress{width:100%;height:8px;background:var(--color-gray-200);border-radius:4px;overflow:hidden}.progress-bar{height:100%;background:var(--color-primary);transition:width .3s ease}.progress-bar.success{background:var(--color-success)}.progress-bar.warning{background:var(--color-warning)}.progress-bar.danger{background:var(--color-danger)}.tooltip{position:relative;display:inline-block;cursor:help;border-bottom:1px dotted var(--color-gray-400)}.divider{height:1px;background:var(--color-gray-200);margin:var(--spacing-lg) 0}@media(max-width:768px){.appShell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.content{padding:var(--spacing-md)}.grid-2,.grid-3,.grid-4,.stat-card-grid,.filter-fields{grid-template-columns:1fr}.pagination{flex-direction:column;gap:var(--spacing-sm)}.pagination-btn{width:100%}.page-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}table{font-size:12px}th,td{padding:8px 10px}}
