:root{--bg-primary: #0f0f0f;--bg-secondary: #1a1a1a;--bg-card: #1f1f1f;--bg-hover: #2a2a2a;--border-color: #2e2e2e;--text-primary: #ffffff;--text-secondary: #a0a0a0;--text-muted: #666666;--accent: #10b981;--accent-hover: #059669;--danger: #ef4444;--danger-hover: #dc2626;--warning: #f59e0b;--info: #3b82f6}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;-webkit-font-smoothing:antialiased}#root{min-height:100vh}.app-container{display:flex;min-height:100vh}.sidebar{width:260px;background:var(--bg-secondary);border-right:1px solid var(--border-color);padding:24px 16px;display:flex;flex-direction:column;position:fixed;height:100vh;top:0;left:0}.sidebar-logo{font-size:1.5rem;font-weight:700;color:var(--accent);margin-bottom:8px;padding:0 8px}.sidebar-subtitle{font-size:.75rem;color:var(--text-muted);padding:0 8px;margin-bottom:32px;text-transform:uppercase;letter-spacing:.05em}.sidebar-nav{display:flex;flex-direction:column;gap:4px;flex:1}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:8px;color:var(--text-secondary);text-decoration:none;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:none;background:none;width:100%;text-align:left}.nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-item.active{background:var(--accent);color:#fff}.nav-item svg{width:20px;height:20px}.sidebar-footer{border-top:1px solid var(--border-color);padding-top:16px;margin-top:auto}.user-info{display:flex;align-items:center;gap:12px;padding:8px}.user-avatar{width:36px;height:36px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem}.user-email{font-size:.75rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.main-content{flex:1;margin-left:260px;padding:32px;background:var(--bg-primary);min-height:100vh}.page-header{margin-bottom:32px}.page-title{font-size:1.75rem;font-weight:700;margin-bottom:8px}.page-subtitle{color:var(--text-secondary);font-size:.875rem}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:24px}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.card-title{font-size:1rem;font-weight:600}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:32px}.stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:20px}.stat-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.stat-value{font-size:2rem;font-weight:700;color:var(--text-primary)}.stat-value.accent{color:var(--accent)}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;padding:12px 16px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border-color)}.data-table td{padding:16px;border-bottom:1px solid var(--border-color);font-size:.875rem}.data-table tr:hover{background:var(--bg-hover)}.data-table tbody tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.badge-admin{background:#ef444426;color:#ef4444}.badge-beta{background:#3b82f626;color:#3b82f6}.badge-essential{background:#10b98126;color:#10b981}.badge-professional{background:#a855f726;color:#a855f7}.badge-executive{background:#f59e0b26;color:#f59e0b}.badge-none{background:#66666626;color:#666}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:none}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:var(--danger-hover)}.btn-secondary{background:var(--bg-hover);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--border-color)}.btn-sm{padding:6px 12px;font-size:.75rem}.btn-icon{padding:8px;border-radius:6px}.form-group{margin-bottom:20px}.form-label{display:block;font-size:.875rem;font-weight:500;margin-bottom:8px;color:var(--text-secondary)}.form-input{width:100%;padding:12px 16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:.875rem;transition:border-color .15s ease}.form-input:focus{outline:none;border-color:var(--accent)}.form-input::placeholder{color:var(--text-muted)}.form-select{width:100%;padding:12px 16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:.875rem;cursor:pointer}.form-select:focus{outline:none;border-color:var(--accent)}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(4px)}.modal{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:32px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.modal-title{font-size:1.25rem;font-weight:600}.modal-close{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px}.modal-close:hover{color:var(--text-primary)}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.duration-picker{display:flex;gap:8px;flex-wrap:wrap}.duration-option{padding:8px 16px;border-radius:8px;background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);font-size:.875rem;cursor:pointer;transition:all .15s ease}.duration-option:hover{border-color:var(--accent);color:var(--text-primary)}.duration-option.selected{background:var(--accent);border-color:var(--accent);color:#fff}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary)}.login-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:48px;width:100%;max-width:400px}.login-logo{font-size:2rem;font-weight:700;color:var(--accent);text-align:center;margin-bottom:8px}.login-title{font-size:.875rem;color:var(--text-muted);text-align:center;margin-bottom:32px;text-transform:uppercase;letter-spacing:.1em}.login-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--danger);padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:.875rem}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.875rem;color:var(--text-secondary)}.checkbox-input{width:18px;height:18px;accent-color:var(--accent)}.search-bar{position:relative;margin-bottom:20px}.search-input{width:100%;padding:12px 16px 12px 44px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-size:.875rem}.search-input:focus{outline:none;border-color:var(--accent)}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.empty-state{text-align:center;padding:48px 24px;color:var(--text-muted)}.empty-state svg{width:48px;height:48px;margin-bottom:16px;opacity:.5}.empty-state p{font-size:.875rem}.loading{display:flex;align-items:center;justify-content:center;padding:48px}.spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.bulk-actions{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--accent);border-radius:8px;margin-bottom:16px}.bulk-actions-text{font-size:.875rem;font-weight:500}.bulk-actions .btn{background:#fff3}.bulk-actions .btn:hover{background:#ffffff4d}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}
